成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

文件讀取java代碼,文件讀取 java

一個(gè)文件夾下的多個(gè)txt文件,然后隨機(jī)讀取其中一個(gè)txt文件的內(nèi)容(java代碼)?

提供個(gè)思路:

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括應(yīng)城網(wǎng)站建設(shè)、應(yīng)城網(wǎng)站制作、應(yīng)城網(wǎng)頁制作以及應(yīng)城網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,應(yīng)城網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到應(yīng)城省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

1、把文件夾下所有txt文件的文件名,讀取List里。

2、生成一個(gè)隨機(jī)數(shù),隨機(jī)的范圍是:0到List.size()-1。

3、用步驟2生產(chǎn)的隨機(jī)數(shù)取個(gè)文件名。List.get(隨機(jī)數(shù)變量)。

4、根據(jù)步驟3中取到的文件名,去讀取文件內(nèi)容。

這樣就可以隨機(jī)讀取其中一個(gè)txt文件的內(nèi)容了。

跪求Java中寫入文件和從文件中讀取數(shù)據(jù)的最佳的代碼!

import java.io.BufferedReader;

import java.io.File;

import java.io.FileReader;

import java.io.FileWriter;

import java.io.IOException;

public class IOTest {

public static void main(String[] args) {

String str = "123\r\n456";

writeFile(str);//寫

String str1 = readFile();//讀

System.out.println(str1);

}

/**

* 傳遞寫的內(nèi)容

* @param str

*/

static void writeFile(String str) {

try {

File file = new File("d:\\file.txt");

if(file.exists()){//存在

file.delete();//刪除再建

file.createNewFile();

}else{

file.createNewFile();//不存在直接創(chuàng)建

}

FileWriter fw = new FileWriter(file);//文件寫IO

fw.write(str);

fw.flush();

fw.close();

} catch (IOException e) {

e.printStackTrace();

}

}

/**

* 返回讀取的內(nèi)容

* @return

*/

static String readFile() {

String str = "", temp = null;

try {

File file = new File("d:\\file.txt");

FileReader fr = new FileReader(file);

BufferedReader br = new BufferedReader(fr);//文件讀IO

while((temp = br.readLine())!=null){//讀到結(jié)束為止

str += (temp+"\n");

}

br.close();

fr.close();

} catch (IOException e) {

e.printStackTrace();

}

return str;

}

}

剛寫的,夠朋友好好學(xué)習(xí)一下啦,呵呵

多多看API,多多練習(xí)

java文件如何讀取

java讀取文件方法大全

一、多種方式讀文件內(nèi)容。

1、按字節(jié)讀取文件內(nèi)容

2、按字符讀取文件內(nèi)容

3、按行讀取文件內(nèi)容

4、隨機(jī)讀取文件內(nèi)容

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 java.io.RandomAccessFile;

9. import java.io.Reader;

10.

11. public class ReadFromFile {

12. /**

13. * 以字節(jié)為單位讀取文件,常用于讀二進(jìn)制文件,如圖片、聲音、影像等文件。

14. *

15. * @param fileName

16. * 文件的名

17. */

18. public static void readFileByBytes(String fileName) {

19. File file = new File(fileName);

20. InputStream in = null;

21. try {

22. System.out.println("以字節(jié)為單位讀取文件內(nèi)容,一次讀一個(gè)字節(jié):");

23. // 一次讀一個(gè)字節(jié)

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 (IOException e) {

31. e.printStackTrace();

32. return;

33. }

34. try {

35. System.out.println("以字節(jié)為單位讀取文件內(nèi)容,一次讀多個(gè)字節(jié):");

36. // 一次讀多個(gè)字節(jié)

37. byte[] tempbytes = new byte[100];

38. int byteread = 0;

39. in = new FileInputStream(fileName);

40. ReadFromFile.showAvailableBytes(in);

41. // 讀入多個(gè)字節(jié)到字節(jié)數(shù)組中,byteread為一次讀入的字節(jié)數(shù)

42. 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. * 以字符為單位讀取文件,常用于讀文本,數(shù)字等類型的文件

59. *

60. * @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("以字符為單位讀取文件內(nèi)容,一次讀一個(gè)字節(jié):");

68. // 一次讀一個(gè)字符

69. reader = new InputStreamReader(new FileInputStream(file));

70. int tempchar;

71. while ((tempchar = reader.read()) != -1) {

72. // 對(duì)于windows下,\r\n這兩個(gè)字符在一起時(shí),表示一個(gè)換行。

73. // 但如果這兩個(gè)字符分開顯示時(shí),會(huì)換兩次行。

74. // 因此,屏蔽掉\r,或者屏蔽\n。否則,將會(huì)多出很多空行。

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 {

84. System.out.println("以字符為單位讀取文件內(nèi)容,一次讀多個(gè)字節(jié):");

85. // 一次讀多個(gè)字符

86. char[] tempchars = new char[30];

87. int charread = 0;

88. reader = new InputStreamReader(new FileInputStream(fileName));

89. // 讀入多個(gè)字符到字符數(shù)組中,charread為一次讀取字符數(shù)

90. while ((charread = reader.read(tempchars)) != -1) {

91. // 同樣屏蔽掉\r不顯示

92. if ((charread == tempchars.length)

93. (tempchars[tempchars.length - 1] != '\r')) {

94. System.out.print(tempchars);

95. } else {

96. for (int i = 0; i charread; i++) {

97. if (tempchars[i] == '\r') {

98. continue;

99. } else {

100. System.out.print(tempchars[i]);

101. }

102. }

103. }

104. }

105.

106. } catch (Exception e1) {

107. e1.printStackTrace();

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.println("以行為單位讀取文件內(nèi)容,一次讀一整行:");

129. reader = new BufferedReader(new FileReader(file));

130. String tempString = null;

131. int line = 1;

132. // 一次讀入一行,直到讀入null為文件結(jié)束

133. while ((tempString = reader.readLine()) != null) {

134. // 顯示行號(hào)

135. System.out.println("line " + line + ": " + tempString);

136. line++;

137. }

138. reader.close();

139. } catch (IOException e) {

140. e.printStackTrace();

141. } finally {

142. if (reader != null) {

143. try {

144. reader.close();

145. } catch (IOException e1) {

146. }

147. }

148. }

149. }

150.

151. /**

152. * 隨機(jī)讀取文件內(nèi)容

153. *

154. * @param fileName

155. * 文件名

156. */

157. public static void readFileByRandomAccess(String fileName) {

158. RandomAccessFile randomFile = null;

159. try {

160. System.out.println("隨機(jī)讀取一段文件內(nèi)容:");

161. // 打開一個(gè)隨機(jī)訪問文件流,按只讀方式

162. randomFile = new RandomAccessFile(fileName, "r");

163. // 文件長(zhǎng)度,字節(jié)數(shù)

164. long fileLength = randomFile.length();

165. // 讀文件的起始位置

166. int beginIndex = (fileLength 4) ? 4 : 0;

167. // 將讀文件的開始位置移到beginIndex位置。

168. randomFile.seek(beginIndex);

169. byte[] bytes = new byte[10];

170. int byteread = 0;

171. // 一次讀10個(gè)字節(jié),如果文件內(nèi)容不足10個(gè)字節(jié),則讀剩下的字節(jié)。

172. // 將一次讀取的字節(jié)數(shù)賦給byteread

173. while ((byteread = randomFile.read(bytes)) != -1) {

174. System.out.write(bytes, 0, byteread);

175. }

176. } catch (IOException e) {

177. e.printStackTrace();

178. } finally {

179. if (randomFile != null) {

180. try {

181. randomFile.close();

182. } catch (IOException e1) {

183. }

184. }

185. }

186. }

187.

188. /**

189. * 顯示輸入流中還剩的字節(jié)數(shù)

190. *

191. * @param in

192. */

193. private static void showAvailableBytes(InputStream in) {

194. try {

195. System.out.println("當(dāng)前字節(jié)輸入流中的字節(jié)數(shù)為:" + in.available());

196. } catch (IOException e) {

197. e.printStackTrace();

198. }

199. }

200.

201. public static void main(String[] args) {

202. String fileName = "C:/temp/newTemp.txt";

203. ReadFromFile.readFileByBytes(fileName);

204. ReadFromFile.readFileByChars(fileName);

205. ReadFromFile.readFileByLines(fileName);

206. ReadFromFile.readFileByRandomAccess(fileName);

207. }

208. }

二、將內(nèi)容追加到文件尾部

1. import java.io.FileWriter;

2. import java.io.IOException;

3. import java.io.RandomAccessFile;

4.

5. /**

6. * 將內(nèi)容追加到文件尾部

7. */

8. public class AppendToFile {

9.

10. /**

11. * A方法追加文件:使用RandomAccessFile

12. * @param fileName 文件名

13. * @param content 追加的內(nèi)容

14. */

15. public static void appendMethodA(String fileName, String content) {

16. try {

17. // 打開一個(gè)隨機(jī)訪問文件流,按讀寫方式

18. RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");

19. // 文件長(zhǎng)度,字節(jié)數(shù)

20. long fileLength = randomFile.length();

21. //將寫文件指針移到文件尾。

22. randomFile.seek(fileLength);

23. randomFile.writeBytes(content);

24. randomFile.close();

25. } catch (IOException e) {

26. e.printStackTrace();

27. }

28. }

29.

30. /**

31. * B方法追加文件:使用FileWriter

32. * @param fileName

33. * @param content

34. */

35. public static void appendMethodB(String fileName, String content) {

36. try {

37. //打開一個(gè)寫文件器,構(gòu)造函數(shù)中的第二個(gè)參數(shù)true表示以追加形式寫文件

38. FileWriter writer = new FileWriter(fileName, true);

39. writer.write(content);

40. writer.close();

41. } catch (IOException e) {

42. e.printStackTrace();

43. }

44. }

45.

46. public static void main(String[] args) {

47. String fileName = "C:/temp/newTemp.txt";

48. String content = "new append!";

49. //按方法A追加文件

50. AppendToFile.appendMethodA(fileName, content);

51. AppendToFile.appendMethodA(fileName, "append end. \n");

52. //顯示文件內(nèi)容

53. ReadFromFile.readFileByLines(fileName);

54. //按方法B追加文件

55. AppendToFile.appendMethodB(fileName, content);

56. AppendToFile.appendMethodB(fileName, "append end. \n");

57. //顯示文件內(nèi)容

58. ReadFromFile.readFileByLines(fileName);

59. }

60. }

java 怎么讀取配置文件代碼

方式一:采用ServletContext讀取,讀取配置文件的realpath,然后通過文件流讀取出來。

因?yàn)槭怯肧ervletContext讀取文件路徑,所以配置文件可以放入在web-info的classes目錄中,也可以在應(yīng)用層級(jí)及web-info的目錄中。文件存放位置具體在eclipse工程中的表現(xiàn)是:可以放在src下面,也可放在web-info及webroot下面等。因?yàn)槭亲x取出路徑后,用文件流進(jìn)行讀取的,所以可以讀取任意的配置文件包括xml和properties。缺點(diǎn):不能在servlet外面應(yīng)用讀取配置信息。

具體舉例如下:

//ServletContext.getRealPath(name)讀取路徑

privatevoid test1(HttpServletRequest request, HttpServletResponseresponse)

throwsServletException,IOException {

//response.setContentType("text/html;charset=utf-8");

String path = "/WEB-INF/jdbc_connection.properties"; //讀取WEB-INF中的配置文件

String realPath = getServletContext().getRealPath(path);//getServlet

怎么用java代碼讀取excel文件

本例使用java來讀取excel的內(nèi)容并展出出結(jié)果,代碼如下:

復(fù)制代碼 代碼如下:

import java.io.BufferedInputStream;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.text.DecimalFormat;

import java.text.SimpleDateFormat;

import java.util.ArrayList;

import java.util.Arrays;

import java.util.Date;

import java.util.List;

import org.apache.poi.hssf.usermodel.HSSFCell;

import org.apache.poi.hssf.usermodel.HSSFDateUtil;

import org.apache.poi.hssf.usermodel.HSSFRow;

import org.apache.poi.hssf.usermodel.HSSFSheet;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.poifs.filesystem.POIFSFileSystem;

public class ExcelOperate {

public static void main(String[] args) throws Exception {

File file = new File("ExcelDemo.xls");

String[][] result = getData(file, 1);

int rowLength = result.length;

for(int i=0;irowLength;i++) {

for(int j=0;jresult[i].length;j++) {

System.out.print(result[i][j]+"\t\t");

}

System.out.println();

}

}

/**

* 讀取Excel的內(nèi)容,第一維數(shù)組存儲(chǔ)的是一行中格列的值,二維數(shù)組存儲(chǔ)的是多少個(gè)行

* @param file 讀取數(shù)據(jù)的源Excel

* @param ignoreRows 讀取數(shù)據(jù)忽略的行數(shù),比喻行頭不需要讀入 忽略的行數(shù)為1

* @return 讀出的Excel中數(shù)據(jù)的內(nèi)容

* @throws FileNotFoundException

* @throws IOException

*/

public static String[][] getData(File file, int ignoreRows)

throws FileNotFoundException, IOException {

ListString[] result = new ArrayListString[]();

int rowSize = 0;

BufferedInputStream in = new BufferedInputStream(new FileInputStream(

file));

// 打開HSSFWorkbook

POIFSFileSystem fs = new POIFSFileSystem(in);

HSSFWorkbook wb = new HSSFWorkbook(fs);

HSSFCell cell = null;

for (int sheetIndex = 0; sheetIndex wb.getNumberOfSheets(); sheetIndex++) {

HSSFSheet st = wb.getSheetAt(sheetIndex);

// 第一行為標(biāo)題,不取

for (int rowIndex = ignoreRows; rowIndex = st.getLastRowNum(); rowIndex++) {

HSSFRow row = st.getRow(rowIndex);

if (row == null) {

continue;

}

int tempRowSize = row.getLastCellNum() + 1;

if (tempRowSize rowSize) {

rowSize = tempRowSize;

}

String[] values = new String[rowSize];

Arrays.fill(values, "");

boolean hasValue = false;

for (short columnIndex = 0; columnIndex = row.getLastCellNum(); columnIndex++) {

String value = "";

cell = row.getCell(columnIndex);

if (cell != null) {

// 注意:一定要設(shè)成這個(gè),否則可能會(huì)出現(xiàn)亂碼

cell.setEncoding(HSSFCell.ENCODING_UTF_16);

switch (cell.getCellType()) {

case HSSFCell.CELL_TYPE_STRING:

value = cell.getStringCellValue();

break;

case HSSFCell.CELL_TYPE_NUMERIC:

if (HSSFDateUtil.isCellDateFormatted(cell)) {

Date date = cell.getDateCellValue();

if (date != null) {

value = new SimpleDateFormat("yyyy-MM-dd")

.format(date);

} else {

value = "";

}

} else {

value = new DecimalFormat("0").format(cell

.getNumericCellValue());

}

break;

case HSSFCell.CELL_TYPE_FORMULA:

// 導(dǎo)入時(shí)如果為公式生成的數(shù)據(jù)則無值

if (!cell.getStringCellValue().equals("")) {

value = cell.getStringCellValue();

} else {

value = cell.getNumericCellValue() + "";

}

break;

case HSSFCell.CELL_TYPE_BLANK:

break;

case HSSFCell.CELL_TYPE_ERROR:

value = "";

break;

case HSSFCell.CELL_TYPE_BOOLEAN:

value = (cell.getBooleanCellValue() == true ? "Y"

: "N");

break;

default:

value = "";

}

}

if (columnIndex == 0 value.trim().equals("")) {

break;

}

values[columnIndex] = rightTrim(value);

hasValue = true;

}

本文題目:文件讀取java代碼,文件讀取 java
標(biāo)題來源:http://jinyejixie.com/article46/hojeeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計(jì)公司定制網(wǎng)站、App開發(fā)網(wǎng)站營(yíng)銷、虛擬主機(jī)、網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司
彰化县| 无锡市| 天峻县| 弥渡县| 南郑县| 黄大仙区| 辽源市| 崇义县| 界首市| 梁山县| 武安市| 六枝特区| 大冶市| 平谷区| 芦山县| 彭泽县| 定日县| 呼和浩特市| 黄冈市| 嫩江县| 修武县| 碌曲县| 临夏市| 龙胜| 阿尔山市| 正定县| 东明县| 永修县| 南靖县| 宜春市| 上高县| 云霄县| 婺源县| 迁安市| 白水县| 钟祥市| 辉县市| 赤峰市| 大荔县| 辽阳市| 连南|