java_io操作_(读写、追加、删除、移动、复制、修改)

上传人:第*** 文档编号:34051798 上传时间:2018-02-20 格式:DOCX 页数:15 大小:52.93KB
返回 下载 相关 举报
java_io操作_(读写、追加、删除、移动、复制、修改)_第1页
第1页 / 共15页
java_io操作_(读写、追加、删除、移动、复制、修改)_第2页
第2页 / 共15页
java_io操作_(读写、追加、删除、移动、复制、修改)_第3页
第3页 / 共15页
java_io操作_(读写、追加、删除、移动、复制、修改)_第4页
第4页 / 共15页
java_io操作_(读写、追加、删除、移动、复制、修改)_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《java_io操作_(读写、追加、删除、移动、复制、修改)》由会员分享,可在线阅读,更多相关《java_io操作_(读写、追加、删除、移动、复制、修改)(15页珍藏版)》请在金锄头文库上搜索。

1、一、多种方式读文件内容。 1、按字节读取文件内容 2、按字符读取文件内容 3、按行读取文件内容 4、随机读取文件内容 Java 代码 1. import java.io.BufferedReader; 2. import java.io.File; 3. import java.io.FileInputStream; 4. import java.io.FileReader; 5. import java.io.IOException; 6. import java.io.InputStream; 7. import java.io.InputStreamReader; 8. import j

2、ava.io.RandomAccessFile; 9. import java.io.Reader; 10. public class ReadFromFile 11. /* 12. * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 13. * param fileName 文件的名 14. */ 15. public static void readFileByBytes(String fileName) 16. File file = new File(fileName); 17. InputStream in = null; 18. try 19. System.

3、out.println(以字节为单位读取文件内容,一次读一个字节:); 20. / 一次读一个字节 21. in = new FileInputStream(file); 22. int tempbyte; 23. while(tempbyte=in.read() != -1) 24. System.out.write(tempbyte); 25. 26. in.close(); 27. catch (IOException e) 28. e.printStackTrace(); 29. return; 30. 31. try 32. System.out.println(以字节为单位读取文件

4、内容,一次读多个字节:); 33. /一次读多个字节 34. byte tempbytes = new byte100; 35. int byteread = 0; 36. in = new FileInputStream(fileName); 37. ReadFromFile.showAvailableBytes(in); 38. /读入多个字节到字节数组中,byteread 为一次读入的字节数 39. while (byteread = in.read(tempbytes) != -1) 40. System.out.write(tempbytes, 0, byteread); 41. 4

5、2. catch (Exception e1) 43. e1.printStackTrace(); 44. finally 45. if (in != null) 46. try 47. in.close(); 48. catch (IOException e1) 49. 50. 51. 52. 53. /* 54. * 以字符为单位读取文件,常用于读文本,数字等类型的文件 55. * param fileName 文件名 56. */ 57. public static void readFileByChars(String fileName) 58. File file = new Fil

6、e(fileName); 59. Reader reader = null; 60. try 61. System.out.println(以字符为单位读取文件内容,一次读一个字节:); 62. / 一次读一个字符 63. reader = new InputStreamReader(new FileInputStream(file); 64. int tempchar; 65. while (tempchar = reader.read() != -1) 66. /对于 windows 下,/r/n 这两个字符在一起时,表示一个换行。 67. /但如果这两个字符分开显示时,会换两次行。 68

7、. /因此,屏蔽掉/r ,或者屏蔽 /n。否则,将会多出很多空行。 69. if (char)tempchar) != /r) 70. System.out.print(char)tempchar); 71. 72. 73. reader.close(); 74. catch (Exception e) 75. e.printStackTrace(); 76. 77. try 78. System.out.println(以字符为单位读取文件内容,一次读多个字节:); 79. /一次读多个字符 80. char tempchars = new char30; 81. int charread

8、= 0; 82. reader = new InputStreamReader(new FileInputStream(fileName); 83. /读入多个字符到字符数组中,charread 为一次读取字符数 84. while (charread = reader.read(tempchars)!=-1) 85. /同样屏蔽掉/r 不显示 86. if (charread = tempchars.length)&(tempcharstempchars.length-1 != /r) 87. System.out.print(tempchars); 88. else 89. for (in

9、t i=0; i 4) ? 4 : 0; 154. /将读文件的开始位置移到 beginIndex 位置。 155. randomFile.seek(beginIndex); 156. byte bytes = new byte10; 157. int byteread = 0; 158. /一次读 10 个字节,如果文件内容不足 10 个字节,则读剩下的字节。 159. /将一次读取的字节数赋给 byteread 160. while (byteread = randomFile.read(bytes) != -1) 161. System.out.write(bytes, 0, byter

10、ead); 162. 163. catch (IOException e) 164. e.printStackTrace(); 165. finally 166. if (randomFile != null) 167. try 168. randomFile.close(); 169. catch (IOException e1) 170. 171. 172. 173. 174. /* 175. * 显示输入流中还剩的字节数 176. * param in 177. */ 178. private static void showAvailableBytes(InputStream in)

11、179. try 180. System.out.println(当前字节输入流中的字节数为 : + in.available(); 181. catch (IOException e) 182. e.printStackTrace(); 183. 184. 185. 186. public static void main(String args) 187. String fileName = C:/temp/newTemp.txt; 188. ReadFromFile.readFileByBytes(fileName); 189. ReadFromFile.readFileByChars(

12、fileName); 190. ReadFromFile.readFileByLines(fileName); 191. ReadFromFile.readFileByRandomAccess(fileName); 192. 193. 194. 195. 196. 197. 二、将内容追加到文件尾部 198. 199. import java.io.FileWriter; 200. import java.io.IOException; 201. import java.io.RandomAccessFile; 202. 203. /* 204. * 将内容追加到文件尾部 205. */ 20

13、6. public class AppendToFile 207. 208. /* 209. * A 方法追加文件:使用 RandomAccessFile 210. * param fileName 文件名 211. * param content 追加的内容 212. */ 213. public static void appendMethodA(String fileName, String content) 214. try 215. / 打开一个随机访问文件流,按读写方式 216. RandomAccessFile randomFile = new RandomAccessFile(fileName, rw); 217. / 文件长度,字节数 218. long fileLength = randomFile.length(); 219. /将写文件指针移到文件尾。 220. randomFile.seek(fileLength); 221. randomFile.writeBytes(content); 222. randomFile.close(); 223. catch (IOException e) 224. e.printStackTrace(); 225.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号