如何将文件中的句子存储到字符串中,然后将下一行(由数字组成)存储到字符串中?
当我使用hasNextline或nextLine时,它们都不起作用。我很困惑。
Scanner kb = new Scanner(System.in);
String secretMessage = null;
String message, number = null;
File file = new File(System.in);
Scanner inputFile = new Scanner(file);
while(inputFile.hasNext())
{
message = inputFile.nextLine();
number = inputFile.nextLine();
}
System.out.println(number + "and " + message);
答案 0 :(得分:0)
您循环遍历整个文件,覆盖message
和number
变量,然后在结尾处打印一次。像这样在循环中移动print语句,这样就会打印每一行。
while(inputFile.hasNext())
{
message = inputFile.nextLine();
number = inputFile.nextLine();
System.out.println(number + "and " + message);
}
答案 1 :(得分:0)
我从文件中读取行的一个建议是使用Files.readAllLines()方法。
import java.io.BufferedWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.List;
public class Display_Summary_Text {
public static void main(String[] args)
{
String fileName = "//file_path/TestFile.txt";
try
{
List<String> lines = Files.readAllLines(Paths.get(fileName), Charset.defaultCharset());
String eol = System.getProperty("line.separator");
for (int i = 0; i <lines.size(); i+=2)
{
System.out.println(lines.get(i).toString() + "and" + lines.get(i+1) + eol);
}
}catch(IOException io)
{
io.printStackTrace();
}
}
}
使用此设置,您还可以创建stringBuilder和Writer,以便在需要时将输出保存到文件中。