《java读取方法大全.doc》由会员分享,可在线阅读,更多相关《java读取方法大全.doc(23页珍藏版)》请在金锄头文库上搜索。
1、java读取文件方法大全.txt如果有来生,要做一棵树,站成永恒,没有悲伤的姿势。一半在土里安详,一半在风里飞扬,一半洒落阴凉,一半沐浴阳光,非常沉默非常骄傲,从不依靠从不寻找。一、多种方式读文件内容。 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.IOExcepti
2、on; 6.import java.io.InputStream; 7.import java.io.InputStreamReader; 8.import java.io.RandomAccessFile; 9.import java.io.Reader; 10. 11.public class ReadFromFile 12. /* 13. * 以字节为单位读取文件,常用于读二进制文件,如图片、声音、影像等文件。 14. * 15. * param fileName 16. * 文件的名 17. */ 18. public static void readFileByBytes(Strin
3、g fileName) 19. File file = new File(fileName); 20. InputStream in = null; 21. try 22. System.out.println(以字节为单位读取文件内容,一次读一个字节:); 23. / 一次读一个字节 24. in = new FileInputStream(file); 25. int tempbyte; 26. while (tempbyte = in.read() != -1) 27. System.out.write(tempbyte); 28. 29. in.close(); 30. catch (
4、IOException e) 31. e.printStackTrace(); 32. return; 33. 34. try 35. System.out.println(以字节为单位读取文件内容,一次读多个字节:); 36. / 一次读多个字节 37. byte tempbytes = new byte100; 38. int byteread = 0; 39. in = new FileInputStream(fileName); 40. ReadFromFile.showAvailableBytes(in); 41. / 读入多个字节到字节数组中,byteread为一次读入的字节数 4
5、2. while (byteread = in.read(tempbytes) != -1) 43. System.out.write(tempbytes, 0, byteread); 44. 45. catch (Exception e1) 46. e1.printStackTrace(); 47. finally 48. if (in != null) 49. try 50. in.close(); 51. catch (IOException e1) 52. 53. 54. 55. 56. 57. /* 58. * 以字符为单位读取文件,常用于读文本,数字等类型的文件 59. * 60.
6、 * param fileName 61. * 文件名 62. */ 63. public static void readFileByChars(String fileName) 64. File file = new File(fileName); 65. Reader reader = null; 66. try 67. System.out.println(以字符为单位读取文件内容,一次读一个字节:); 68. / 一次读一个字符 69. reader = new InputStreamReader(new FileInputStream(file); 70. int tempchar
7、; 71. while (tempchar = reader.read() != -1) 72. / 对于windows下,rn这两个字符在一起时,表示一个换行。 73. / 但如果这两个字符分开显示时,会换两次行。 74. / 因此,屏蔽掉r,或者屏蔽n。否则,将会多出很多空行。 75. if (char) tempchar) != r) 76. System.out.print(char) tempchar); 77. 78. 79. reader.close(); 80. catch (Exception e) 81. e.printStackTrace(); 82. 83. try 8
8、4. System.out.println(以字符为单位读取文件内容,一次读多个字节:); 85. / 一次读多个字符 86. char tempchars = new char30; 87. int charread = 0; 88. reader = new InputStreamReader(new FileInputStream(fileName); 89. / 读入多个字符到字符数组中,charread为一次读取字符数 90. while (charread = reader.read(tempchars) != -1) 91. / 同样屏蔽掉r不显示 92. if (charrea
9、d = tempchars.length) 93. & (tempcharstempchars.length - 1 != r) 94. System.out.print(tempchars); 95. else 96. for (int i = 0; i charread; i+) 97. if (tempcharsi = r) 98. continue; 99. else 100. System.out.print(tempcharsi); 101. 102. 103. 104. 105. 106. catch (Exception e1) 107. e1.printStackTrace(
10、); 108. finally 109. if (reader != null) 110. try 111. reader.close(); 112. catch (IOException e1) 113. 114. 115. 116. 117. 118. /* 119. * 以行为单位读取文件,常用于读面向行的格式化文件 120. * 121. * param fileName 122. * 文件名 123. */ 124. public static void readFileByLines(String fileName) 125. File file = new File(fileName); 126. BufferedReader reader = null; 127. try 128. System.out.printl