Rambler's Top100

А Б В Г Д Е Ж З И К Л М Н О П Р С Т У Ф Х Ц Ч Ш Э Ю Я

Все примеры Примеры по пакетам


Чтение текстового файла в строку используя NIO


//Чтение текстового файла в строку используя NIO
//Используется java.nio.channels.FileChannel, java.nio.MappedByteBuffer;
//java.nio.CharBuffer;,java.nio.charset.CharsetDecoder;
package readFile;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.nio.ByteBuffer;
import java.nio.CharBuffer;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.Charset;
import java.nio.charset.CharsetDecoder;

public class Read2 {
private static Charset charset = Charset.forName("utf-8");
private static CharsetDecoder decoder = charset.newDecoder();

static String readFile(String filename , String str){
FileInputStream fileInputStream;
FileChannel fileChannel;
StringBuffer sb = new StringBuffer(2048);
StringBuilder sbl=new StringBuilder(2048);
long fileSize;
MappedByteBuffer mBuf;

try {
fileInputStream = new FileInputStream(filename);
fileChannel = fileInputStream.getChannel();
fileSize = fileChannel.size();
mBuf = fileChannel.map(FileChannel.MapMode.READ_ONLY, 0, fileSize);
CharBuffer cb = decoder.decode(mBuf);
while (cb.hasRemaining())
{
sbl.append(String.valueOf((char)cb.get()));
}
fileChannel.close();
fileInputStream.close();
} catch (IOException exc) {
System.out.println(exc);
System.exit(1);
}
return sbl.toString();
}

public static void main(String[] args) {

String fl="/MyDir/myfile.txt";
String out="";
long start = System.currentTimeMillis(); // start timing
out=readFile("/MyDir/myfile.txt" , "");
System.out.println("out "+out);
long stop = System.currentTimeMillis(); // stop timing
System.out.println("TimeMillis: " + (stop - start));

}


}
Rambler's Top100


Ассоциативные ссылки