java - Java - 如何在一个输入中输入多行文本
问题描述
我目前正在用 Java 编写一个程序,我需要从用户那里获取输入,这是一段文本。但是,我需要用户能够一次输入多段文本。这可以通过在程序提示输入时简单地粘贴整个文本来实现。我正在使用扫描仪进行输入,当我将多个段落粘贴到输入中时,不会抛出任何错误,但是每当我打印出存储文本的变量时,只有第一部分(在第一个换行符之前)是输出。如何在不提示用户为每个文本块单独输入的情况下存储具有多个换行符的整段文本?
我已经有一些代码,但它不能处理多行:
import java.util.*;
public class ReWrite {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please paste the essay to be re-written >> ");
String originalEssay = scanner.nextLine();
System.out.println(originalEssay);
System.out.println("I hope that was your essay...");
}
}
解决方案
您需要有一种方法让用户指示他何时完成输入数据。
在此之前,取最新的输入行并保存。从一个空字符串开始并附加每一行输入的文本,直到用户用一些预先确定的字符集指示他完成了。
推荐阅读
- android - 如何下载适用于 Android 的 Xbox-live SDK 包?
- .htaccess - 误解从旧域重定向到新域的工作原理
- python - 如何以正确的方式在 python 中使用 flatbuffers?
- python - 搜索不同字符的索引
- hive - 如何在 HIVE 中连接小拼花文件
- sql - 如何在数据库中选择每个月的最大日期
- java - 使用阵列适配器强制关闭获取 JSON 并显示在列表视图上
- android - 根据他的非固定元素高度设置 ListView 的大小
- excel - 文本按空格和一半文本分割
- python - 如何修复 'print("%s:" % h, end=" ", file=self._fp)' SyntaxError: python2.7 中的无效语法