2017-06-18 9 views
-1

テキストファイルの読み込みから取得された各行をどのように文字列に変換できますか?例えば:テキストファイルの読み込みから取り出された各行の文字列への変換

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()); 

    } 

私は「stringValueOf」の各ラインを毎回取得するためのforループ内で、次を追加しようとしましたが、代わりにそれはseparatlyではなく、各ラインをそれぞれcaracterを表示します。

String stringValueOf = String.valueOf((char) buffer.get()); 

答えて

0

文字を読み取るために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 
    } 
} 
関連する問題