㈠ 求java操作txt文件的方法
/**
*@date:2015年5月11日上午9:58:42
*@Description:讀取指定行內容,不包括空行
*@paramn
*@return
*/
publicString_read(intn)throwsException{
List<String>list=newArrayList<String>();
BufferedReaderb=null;
Filefile=newFile("C:\Users\Administrator\Desktop\遠程調用.txt");
b=newBufferedReader(newFileReader(file));
Stringline=null;
while((line=b.readLine())!=null){
if(!line.equals("")){
list.add(line);
}
}
b.close();
returnlist.get(n-1);
}
/**
*@date:2015年5月11日上午11:54:16
*@Description:修改指定行的指定數組內容
*@paramn
*@paramstr
*@throwsException
*/
publicvoid_change(intn,String[]str)throwsException{
Filefile=newFile("C:\Users\Administrator\Desktop\遠程調用.txt");
BufferedReaderb=newBufferedReader(newFileReader(file));
StringBuffersb=newStringBuffer();
StringBuffersb1=newStringBuffer();
for(inti=0;i<str.length;i++){
sb.append(str[i]);
}
Stringline=null;
intindex=1;
while((line=b.readLine())!=null){
if(!line.equals("")&&index!=n){
sb1.append(line);
sb1.append(System.getProperty("line.separator"));
index++;
}elseif(!line.equals("")&&index==n){
sb1.append(sb.toString());
sb1.append(System.getProperty("line.separator"));
index++;
}
}
b.close();
BufferedWriterbw=newBufferedWriter(newFileWriter(file));
bw.write(sb1.toString());
bw.close();
}
㈡ java處理txt文件
分別讀取兩個文件
String[] s1 = new String[] { "1,admin", "2,manager", "3,qyi" };//假設這是第一個文件
String[] s2 = new String[] { "SN222,admin", "SN33,manager","SN0982,qyi" };//第二個文件的內容
List<String> l = new ArrayList<String>();//比較組合後的結果集
for (int i = 0; i < s1.length; i++) {//取第一文件的每一個對象與第二文件的每一個對象
String[] ss1 = s1[i].split(",");
for (int j = 0; j < s2.length; j++) {
String[] ss2 = s2[j].split(",");
if(ss2[1].equals(ss1[1])){//根據用戶名進行比較,如果相同的話就進行字元串拼接,然後放到結果集當中,
l.add(ss1[0]+","+ss2[0]+","+ss1[1]);
continue;//跳出內循環
}
}
}
for(String s : l){//列印結果集(可以在這里將結果集寫入到新的文件當中去)
System.out.println(s);
}
㈢ java怎麼從txt文件中讀取數據
1.package txt;
2.
3.import java.io.BufferedReader;
4.import java.io.File;
5.import java.io.FileInputStream;
6.import java.io.InputStreamReader;
7.
8./**
9. * 讀取TXE數據
10. */
11.public class ReadTxtUtils {
12. public static void main(String arg[]) {
13. try {
14. String encoding = "GBK"; // 字元編碼(可解決中文亂碼問題 )
15. File file = new File("c:/aa.txt");
16. if (file.isFile() && file.exists()) {
17. InputStreamReader read = new InputStreamReader(
18. new FileInputStream(file), encoding);
19. BufferedReader bufferedReader = new BufferedReader(read);
20. String lineTXT = null;
21. while ((lineTXT = bufferedReader.readLine()) != null) {
22. System.out.println(lineTXT.toString().trim());
23. }
24. read.close();
25. }else{
26. System.out.println("找不到指定的文件!");
27. }
28. } catch (Exception e) {
29. System.out.println("讀取文件內容操作出錯");
30. e.printStackTrace();
31. }
32. }
33.}
java讀取TXT文件中的數據,每一行就是一個數,返回一個數組,代碼?
?
List list=new ArrayList();
BufferedReader br=new BufferReader(new InputStreamReader(new FileInputStream(new File("in.txt"))));
String str=null;
while((str=br.readLine())!=null)
{
list.add(new Integer(str));
}
Integer[] i=new Integer[list.size()];
list.toArray(i);
TXT文本中如據形如:
123
456
789
讀入二維數組效果為:
temp[0][]={1,2,3};
temp[1][]={4,5,6};
temp[2][]={7,8,9};
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.*;
public class xx{
public static void main(String[]args){
String s;
int[][]save=new int[3][3];
try{
BufferedReader in =new BufferedReader(new FileReader("C:\\txt.txt"));
int i=0;
while((s=in.readLine())!=null){
save[i][0]=Integer.parseInt(s.substring(0,1));
save[i][1]=Integer.parseInt(s.substring(1,2));
save[i][2]=Integer.parseInt(s.substring(2,3));
i++;
}
}
catch(FileNotFoundException e){
e.printStackTrace();
}
catch(IOException e){
e.printStackTrace();
}
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++){
System.out.print(save[i][j]);
}
System.out.println();
}
}
}
或
?
BufferedReader bf=new BufferedReader(new FileReader("Your file"));
String lineContent=null;
int i = 0;
int [][] temp = new int [3][];
while((lineContent=bf.readLine())!=null){
String [] str = lineContent.split("\\d");// 將 lineContent 按數字拆分
for(int j = 0; j < str.length(); j++){
int [i][j] = Integer.parseInt(str[j]);
}
i++;
}
scp|cs|ff|201101
這是d:\\a.txt的數據,與「|」分割取數據出來,保存在變數a;b;c;d里
import java.io.*;
public class Test{
public static void main(String[] args)throws Exception{
String a, b, c, d;
StringBuffer sb = new StringBuffer();
BufferedReader br = new BufferedReader(new FileReader("d:\\a.txt"));
String s = br.readLine();
while(s != null){
sb.append(s);
s = br.readLine();
}
s = sb.toString();
String[] str = s.split("|");
a = str[0];
b = str[0];
c = str[0];
d = str[0];
}
}
㈣ java讀txt方法
Java讀取txt文件和寫入txt文件寫Java程序時經常碰到要讀如txt或寫入txt文件的情況,但是由於要定義好多變數,經常記不住,每次都要查
㈤ Java 如何把數據保存到TXT文件,
首先,打開一個txt文件,File
file
=
new
File("文件路徑");
然後,封裝輸出流,DataOutputStream
os
=
new
DataOutputStream(new
FileOutputStream(file));
接著,往os裡面寫數據,os.writeInt(...)
os.writeByte(...)
os.writeChar(...)等等,你要寫什麼樣類型的數據,就調用什麼樣類型的方法。
最後,記得關掉輸出流,調用os.close()
㈥ java操作txt文件
說個思路
1,讀取文件,並遍歷每一行;
2,拿出每一個的字元串,寫一條正則匹配「2014-02-20 到 2014-02-22」的日期范圍;
3,獲取匹配的字元串,使用indexOf去找也好,有很多種方法去找呢!
甚至,你可以直接在第二步的正則裡面寫好喲。。加油!哈。思路給你了,自己寫吧。
㈦ Java 如何讀取txt文件的內容
java讀取txt文件內容。可以作如下理解:
首先獲得一個文件句柄。File file = new File(); file即為文件句柄。兩人之間連通電話網路了。接下來可以開始打電話了。
通過這條線路讀取甲方的信息:new FileInputStream(file) 目前這個信息已經讀進來內存當中了。接下來需要解讀成乙方可以理解的東西
既然你使用了FileInputStream()。那麼對應的需要使用InputStreamReader()這個方法進行解讀剛才裝進來內存當中的數據
解讀完成後要輸出呀。那當然要轉換成IO可以識別的數據呀。那就需要調用位元組碼讀取的方法BufferedReader()。同時使用bufferedReader()的readline()方法讀取txt文件中的每一行數據哈。
packagecom.campu;
importjava.io.BufferedInputStream;
importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.InputStreamReader;
importjava.io.Reader;
/**
*@authorJava團長
*H20121012.java
*2017-10-29上午11:22:21
*/
publicclassH20121012{
/**
*功能:Java讀取txt文件的內容
*步驟:1:先獲得文件句柄
*2:獲得文件句柄當做是輸入一個位元組碼流,需要對這個輸入流進行讀取
*3:讀取到輸入流後,需要讀取生成位元組流
*4:一行一行的輸出。readline()。
*備註:需要考慮的是異常情況
*@paramfilePath
*/
publicstaticvoidreadTxtFile(StringfilePath){
try{
Stringencoding="GBK";
Filefile=newFile(filePath);
if(file.isFile()&&file.exists()){//判斷文件是否存在
InputStreamReaderread=newInputStreamReader(
newFileInputStream(file),encoding);//考慮到編碼格式
BufferedReaderbufferedReader=newBufferedReader(read);
StringlineTxt=null;
while((lineTxt=bufferedReader.readLine())!=null){
System.out.println(lineTxt);
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
}catch(Exceptione){
System.out.println("讀取文件內容出錯");
e.printStackTrace();
}
}
publicstaticvoidmain(Stringargv[]){
StringfilePath="L:\Apache\htdocs\res\20121012.txt";
//"res/";
readTxtFile(filePath);
}}
我有一個微信公眾號,經常會分享一些Java技術相關的干貨文章,還有一些學習資源。
如果你需要的話,可以用微信搜索「Java團長」或者「javatuanzhang」關注。
㈧ java中txt文件里數據的操作
如果就是上面那種存儲方式,還可以解決。提供思路:讀行,信息存放二維數組,修改查找操作二位數。
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream(file)));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file1)));
br.readLine();跳過第一行
String [][]s;
int i=0;
while(true){
String s=br.readLine();
if(s==null)
break;
else {
s[i]=s.split(",");
i++;
}
}
下面就是對二維數組的操作 修改Anne的 Status。查找Anne所在的行,假設在index行
s[index][3]="off";
下面匹配查找一樣的思路。
有問題就追問。
㈨ Java中通過txt文件存儲和取出數據
如果是這樣的話,你就先用string的split方法以,為分隔符號分開,再replace「」,這兩個東東就可以得到你要的中間的數據了。有個缺點比較佔用內存,或許你也可以去讀文件讀到,的時候就將之前的存起來,然後再讀下面的東西。思路而已試試看吧~