導航:首頁 > 編程語言 > java讀文件行

java讀文件行

發布時間:2022-09-03 23:55:19

java編程:讀文件,按行輸出文件內容

其實你貼的代碼並沒有問題

② java中如何讀取文件中特定行的內容

packagecom.lwj.demo;

importjava.io.*;
{
publicstaticvoidmain(String[]args)throwsException{
RandomAccessFilefile=newRandomAccessFile("file","rw");
//以下向file文件中寫數據
file.writeInt(20);//佔4個位元組
file.writeDouble(8.236598);//佔8個位元組
file.writeUTF("這是一個UTF字元串");//這個長度寫在當前文件指針的前兩個位元組處,可用readShort()讀取
file.writeBoolean(true);//佔1個位元組
file.writeShort(395);//佔2個位元組
file.writeLong(2325451l);//佔8個位元組
file.writeUTF("又是一個UTF字元串");
file.writeFloat(35.5f);//佔4個位元組
file.writeChar('a');//佔2個位元組

file.seek(0);//把文件指針位置設置到文件起始處

//以下從file文件中讀數據,要注意文件指針的位置
System.out.println("——————從file文件指定位置讀數據——————");
System.out.println(file.readInt());
System.out.println(file.readDouble());
System.out.println(file.readUTF());

file.skipBytes(3);//將文件指針跳過3個位元組,本例中即跳過了一個boolean值和short值。
System.out.println(file.readLong());

file.skipBytes(file.readShort());//跳過文件中「又是一個UTF字元串」所佔位元組,注意readShort()方法會移動文件指針,所以不用加2。
System.out.println(file.readFloat());
}
}

③ Java中如何一行行地讀文件

importjava.io.BufferedReader;
importjava.io.File;
importjava.io.FileReader;
importjava.io.IOException;
importjava.io.InputStreamReader;
publicclassReadTest{
publicstaticvoidmain(String[]args){
//讀控制台輸入的文字!
BufferedReaderbr=null;
Stringstr=null;
try{
br=newBufferedReader(newInputStreamReader(System.in));
while(true){
str=br.readLine();
if(str.equals("886"))
break;
System.out.println(str);
}
//讀文本文件..
br=newBufferedReader(newFileReader(newFile("C:\Users\Administrator\Desktop\地址.txt")));
for(str=br.readLine();str!=null;str=br.readLine()){
//列印你讀的文本數據!
System.out.println(str);
}
}catch(IOExceptione){
e.printStackTrace();
}
}
}

核心就是:readLine()方法,一行一行的讀!

④ Java中如何高效的讀取大文件

讀取文件行的標准方式是在內存中讀取,Guava 和Apache Commons IO都提供了如下所示快速讀取文件行的方法:

Files.readLines(new File(path), Charsets.UTF_8); FileUtils.readLines(new File(path));
這種方法帶來的問題是文件的所有行都被存放在內存中,當文件足夠大時很快就會導致程序拋出OutOfMemoryError 異常。

⑤ java如何讀取指定行的數據

讀取文件指定行要用到類LineNumberReader,它是跟蹤行號的緩沖字元輸入流,其基類是BufferedReader。。它有兩個構造方法:
public LineNumberReader(Reader in)
使用默認輸入緩沖區的大小創建新的行編號 reader,默認輸入緩沖區的大小為8096個位元組。
pulbic LineNumberReader(Reader in,int size)
創建新的行編號 reader,將字元讀入給定大小的緩沖區。
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
public class ReadSelectedLine{
/**
* 讀取文件指定行。
*/
public static void main(String[] args) throws IOException {
// 指定讀取的行號
int lineNumber = 12;
// 讀取文件
File sourceFile = new
File("src/Chapter08/ReadSelectedLine.java");
// 讀取指定的行
readAppointedLineNumber(sourceFile, lineNumber);
// 獲取文件的內容的總行數
System.out.println(getTotalLines(sourceFile));
}
// 讀取文件指定行。
static void readAppointedLineNumber(File sourceFile, int lineNumber)
throws IOException {
FileReader in = new FileReader(sourceFile);
LineNumberReader reader = new LineNumberReader(in);
String s = reader.readLine();
if (lineNumber < 0 || lineNumber > getTotalLines(sourceFile)) {
System.out.println("不在文件的行數范圍之內。");
}
{
while (s != null) {
System.out.println("當前行號為:"
+ reader.getLineNumber());
reader.setLineNumber(20);
System.out.println("更改後行號為:"
+ reader.getLineNumber());
System.out.println(s);
System.exit(0);
s = reader.readLine();
}
}
reader.close();
in.close();
}
// 文件內容的總行數。
static int getTotalLines(File file) throws IOException {
FileReader in = new FileReader(file);
LineNumberReader reader = new LineNumberReader(in);
String s = reader.readLine();
int lines = 0;
while (s != null) {
lines++;
s = reader.readLine();
}
reader.close();
in.close();
return lines;
}
}

⑥ java怎麼讀取txt文件的行數


importjava.io.File;
importjava.io.RandomAccessFile;

/**
*讀取文檔的第二行內容
*
*@author33062017年3月21日
*@see
*@since1.0
*/
publicclassCountLine{

/*
*讀取文件絕對路徑
*/
privatestaticStringfilePath="d:/cms.sql";

publicstaticvoidmain(String[]args){

longline=readLine(filePath);

System.out.println(line);

}

/**
*讀取文件行數
*
*@parampath
*文件路徑
*@returnlong
*/
publicstaticlongreadLine(Stringpath){
longindex=0;

try{

RandomAccessFilefile=newRandomAccessFile(newFile(path),"r");

while(null!=file.readLine()){
index++;
}

file.close();

}catch(Exceptione){
e.printStackTrace();
}

returnindex;
}

}

⑦ Java怎麼讀取文件的任意行

java中沒有指定行的方法。
只能挨個讀取。如果你想快速提取。而且文件又不是很大的話,就用LIST吧。

⑧ java讀寫文件指定行的問題

讀寫是兩個不同的分支,通常都是分開單獨使用的,在讀取到每行內容後,通過特定的條件判斷即可獲取到應用的行內容,之後進行輸出即可。
舉例:
可以通過BufferedReader 流的形式進行流緩存,之後通過readLine方法獲取到緩存的內容。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此時獲取到的bre就是整個文件的緩存流
while ((str = bre.readLine())!= null) // 判斷最後一行不存在,為空結束循環
{
System.out.println(str);//原樣輸出讀到的內容,此處如果增加必要的條件,就可以貨到的指定的內容
};
可以通過「FileOutputStream」創建文件實例,之後過「OutputStreamWriter」流的形式進行存儲,
OutputStreamWriter pw = null;//定義一個流
pw = new OutputStreamWriter(new FileOutputStream(「D:/test.txt」),"GBK");//確認流的輸出文件和編碼格式,此過程創建了「test.txt」實例
pw.write("我是要寫入到記事本文件的內容");//將要寫入文件的內容,可以多次write
pw.close();//關閉流
備註:文件流用完之後必須及時通過close方法關閉,否則會一直處於打開狀態,直至程序停止,增加系統負擔。

閱讀全文

與java讀文件行相關的資料

熱點內容
酒店命令 瀏覽:750
中走絲線切割編程視頻 瀏覽:78
衣服壓縮袋手泵原理 瀏覽:714
通達信編程書籍 瀏覽:981
車用壓縮天然氣瓶閥 瀏覽:971
鞋的程序員 瀏覽:259
車的壓縮比是什麼意思 瀏覽:202
網站源碼怎麼傳到文件夾 瀏覽:914
海南壓縮機在哪裡 瀏覽:491
電腦文件夾清晰的文件結構 瀏覽:839
如何把蘋果手機的app轉到安卓 瀏覽:305
java同步並發 瀏覽:249
fw壓縮圖片 瀏覽:258
淘寶申請源碼靠譜嗎 瀏覽:874
androidupdater 瀏覽:635
c2d游戲源碼大全可復製版 瀏覽:771
電腦怎樣重置網關命令 瀏覽:411
winftplinux 瀏覽:335
推特app界面如何設置成中文 瀏覽:452
太空工程師轉子編程屬性 瀏覽:32