转换为字符串从阅读文本文件中检索到的每一行
问题描述:
如何将从阅读文本文件中检索到的每一行转换为字符串。例如:转换为字符串从阅读文本文件中检索到的每一行
RandomAccessFile file = new RandomAccessFile("C:text.txt", "r");
FileChannel channel = file.getChannel();
System.out.println("Size: " + channel.size());
ByteBuffer buffer = ByteBuffer.allocate((int) channel.size());
channel.read(buffer);
buffer.flip();//Restore buffer to position 0 to read it
System.out.println("Read ... ");
for (int i = 0; i < channel.size(); i++) {
System.out.print((char) buffer.get());
}
我想里面添加每次for循环得到每行中的“stringValueOf”,而是它separatly,而不是显示每个卡拉科特每行以下。
String stringValueOf = String.valueOf((char) buffer.get());
答
InputStreamReader用于读取字符。 Java提供了BufferedReader以使读取行变得容易。
下面的代码段从文件中读取行并打印到标准输出。
public void printFileLinesToStdOut(File file, Charset charSet)
{
try(BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file), charSet)))
{
String line = null;
while((line = reader.readLine()) != null)
{
System.out.println(line);
}
}
catch(IOException e)
{
// TODO : your code here
}
}