-
文件编码问题 String s = "慕课网ABC"; // 将字符串转换成字节序列,使用的是项目默认的编码gbk byte[] byte1 = s.getBytes(); for (byte b : byte1) { // 把字节(转换成int)以16进制的方式显示,&0xff:去掉前面无用的0 System.out.print(Integer.toHexString(b & 0xff) + " "); } // 将字符串按照gbk转化成字节序列 byte[] bytes2 = s.getBytes("gbk"); // gbk编码中文占用2个字节,英文占用一个字节 for (byte b : bytes2) { System.out.print(Integer.toHexString(b & 0xff) + " "); } byte[] bytes3 = s.getBytes("utf-8"); // utf-8编码中文占用3个字节,英文占用一个字节 for (byte b : bytes3) { System.out.print(Integer.toHexString(b & 0xff) + " "); } // java是双字节编码utf-16be byte[] bytes4 = s.getBytes("utf-16be"); // utf-16be编码中文占用2个字节,英文占2个字节 for (byte b : bytes4) { System.out.print(Integer.toHexString(b & 0xff) + " "); } // 当你的字节序列是哪种编码时,这个时候想把字节序列转换成字符串, 也需要用这种编码方式,否则会出现乱码 String str1 = new String(bytes4); System.out.println(str1); String str2 = new String(bytes4, "utf-16be"); System.out.println(str2); // 文本文件 就是字节序列 可以是任意编码的字节序列 如果我们在中文机器上直接创建文本文件,那么文本文件只认ansi编码查看全部
-
copyFile工具方法查看全部
-
FileOutputStream写数据查看全部
-
一些操作查看全部
-
设置分割符查看全部
-
。查看全部
-
file查看全部
-
判断是否是一个文件,判断是否是一个目录查看全部
-
拷贝速度 “暮雪千秋3630051: 缓冲字节流这一节希望重新录更正错误,使用缓冲字节流复制确实是最快的方式,但对于小文件10M以下的文件体现不出优势,对于百兆文件正确使用,时间可以控制到50ms内。视频中的缓冲字节流使用有错误,复制文件最快的做法是将批量读取到的字节数组使用缓冲写入到文件,在机器性能范围内字节数组越大越快。在循环写入的过程中不需要使用flush,就像cwt8805说的,缓冲输入流在关闭的时候会将所有缓冲区的数据全部写入文件,使用flush刷新缓冲就失去了缓冲的意义。最后关闭IO流和文件流应该在finally中关闭,否则IO异常时执行不到close语句,IO流仍然没有关闭。 java 文件写入: 1,创建需要写入的字符串 2,创建文件句柄:File file = new File("文件路径") 3,判断文件是否存在,如果不存在就创建!:if(file.exists()) { file .createNewFile() } 4,创建读取对象:FileWriter fw = new Filewriter( file.getAbsoluteFile()); 5, 创建缓存对象 接收读取对象:BufferedWriter bf = new BufferedWriter(fw); 6, 缓存对象的写入方法,并调用声明的需要写入的字符串对象:bf.Writer(声明的需要写入的字符串对象) 7,关闭缓存写入对象: bf.close(); 8, 注意此处应有IO对象的异常需要捕获! ”查看全部
-
FileOutputStream查看全部
-
批量读取,对大文件而言效率高,也是常用的读文件的方式查看全部
-
单字节不适合大文件,大文件效率很低查看全部
-
IO流(输入流、输出流) 字节流、字符流 1、字节流 1)InputStream、OutputStream(抽象类) InputStream抽象了应用程序读取数据的方式 OutputStream抽象了应用程序写出数据的方式 2)EOF = End 读到-1就读到结尾 3)输入流基本方法 int b = in.read();读取一个字节无符号填充到int第八位。-1是EOF in.read(byte[] buf) in.read(byte[] buf,int start,int size) 4)输出流基本方法 out.write(int b) 写出一个byte到流,b的低8位 out.write(byte[] buf)将buf字节数组都写入到流 out.write(byte[] buf, int start,int size) 5)FileInputStream--->具体实现了在文件上读取数据查看全部
-
FileInputStream通过缓存方式读取文件查看全部
-
FileInputStream打印16进制流查看全部
举报
0/150
提交
取消