把文件位置替换成你的就可以了
import java.io.FileInputStream
import java.io.FileNotFoundException
import java.io.FileOutputStream
import java.io.IOException
public class HelloWorld {
public static void main(String[] args) throws IOException {
FileInputStream fs = new FileInputStream("E:\\22.txt")
byte[] buf = new byte[1024*20]
int k = fs.read(buf, 0, buf.length)
System.out.println(new String(buf))
}
}
首先你要知道java的io流主要分两种,一种是字符流,另一种字节流,还有一种过滤流,这个不常用,暂且可以忽略。等你这些都掌握了,推荐你用nio包中的管道流。
流的套用可以提升读写效率(这种方式只能是同类流的套用,比如字节流套用字节流),还有一种是字符流与字节流互相转换,转换通过一种叫做“桥转换”的类,比如OutputStreamWriter类。
下面举个最基础的字节流例子:
public void copyFile(String file, String bak) {
BufferedInputStream bis = null
BufferedOutputStream bos = null
try {
byte[] bytes = new byte[1024]
bis = new BufferedInputStream(new FileInputStream(file))//BufferedInputStream会构造一个背部缓冲区数组,将FileInputStream中的数据存放在缓冲区中,提升了读取的性能
bos = new BufferedOutputStream(new FileOutputStream(bak))//同理
int length = bis.read(bytes)
while (length != -1) {
System.out.println("length: " + length)
bos.write(bytes, 0, length)
length = bis.read(bytes)
}
} catch (Exception e) {
e.printStackTrace()
} finally {
try {
bis.close()
bos.close()
} catch (IOException ex) {
ex.printStackTrace()
}
}
}
字符流的用法:
FileReader fr = new FileReader("D:\\test.txt")
BufferedReader br = new BufferedReader(fr)
或者PrintWriter pw = new PrintWriter(new FileWriter("D:\\test.txt"))
...
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)