對檔案讀寫稀疏矩陣

2021-10-10 22:36:14 字數 3251 閱讀 4007

稀疏陣列方便儲存只有少量有效資料的陣列

int chessarr[

]=newint[11

][11]

; chessarr[1]

[2]=

1;chessarr[1]

[3]=

2;chessarr[1]

[4]=

2;chessarr[2]

[6]=

1;chessarr[2]

[1]=

1;for(

int[

] i : chessarr)

system.out.

println("");}

輸出為:

//獲取有效資料的數量

int sum =0;

for(

int i =

0; i <

11; i++)}

} system.out.

println

(sum)

;//建立稀疏陣列3*3

int sparsearr[

]=newint

[sum +1]

[3];

//設定第一行資料

sparsearr[0]

[0]=

11;sparsearr[0]

[1]=

11;sparsearr[0]

[2]= sum;

int row =0;

for(

int i =

0; i <

11; i++)}

}//輸出稀疏陣列

for(

int[

] i : sparsearr)

system.out.

println("");}

for

(int i =

0; i < sparsearr.length; i++

) out.

write

("\r\n");

} out.

close()

;

輸出結果

//預定義字元陣列用來存從檔案中讀取的字元

char

chars =

newchar

[100];

filereader filereader =

newfilereader

(file)

; filereader.

read

(chars)

;//判斷檔案有多少行資料,以此動態建立合適的稀疏陣列

int m =0;

for(

char c : chars)

}//建立稀疏陣列

int[

] sparsearrread =

newint

[m][3]

;//定義總字元陣列索引,用於遍歷乙個乙個字元

int o =0;

//給每乙個稀疏陣列賦值

for(

int i =

0; i < m; i++

)//如果不是其他無效符號,既遍歷到有效資料的時候,將字元暫時儲存到termstring中

if(chars[o]!=9

&& chars[o]

!=10

)//如果拼配到"/t",則將臨時字串termstring轉數字存起來,break出去,為下乙個二維陣列元素賦值

sparsearrread[i]

[j]= integer.

parseint

(termstring)

; o++

;break;}

}}//輸出

for(

int[

] i : sparsearrread)

system.out.

println(""

);}//關閉

filereader.

close()

;

char

chars =

newchar

[100];

//能不固定長度嗎?

filereader filereader =

newfilereader

(file)

; filereader.

read

(chars)

;//判斷檔案有多少行資料,以此動態建立合適的稀疏陣列

int l =0;

for(

char c : chars)

}//稀疏陣列賦值

int[

] sparsearrread =

newint

[l][3]

; string firststr = string.

valueof

(chars)

; string s = firststr.

trim()

;//刪除字串前後空格

string[

] splitrow = s.

split

("\r\n");

int n =0;

int m =0;

for(string s1 : splitrow)}}

//輸出陣列

for(

int[

] i : sparsearrread)

system.out.

println(""

);} filereader.

close()

;

其實可以將總字元陣列轉化成乙個字串,然後根據"/r/n"來分割一行一行

然後再根據"/t"繼續分割成乙個資料

如果把稀疏陣列大小寫死,那麼直接乙個乙個讀取更簡單。

但是好像無論如何都要預定義乙個固定長度的陣列來接收檔案中的字元,還是沒有辦法動態讀取。只能用集合嗎?

對檔案的讀寫操作

c c 寫入 讀出文字檔案 string filename c i.txt streamreader sr new streamreader filename string str sr.readline sr.close rw.writeline 寫入 rw.writeline abc rw.wr...

十八 python 對檔案讀寫

檔案的讀寫按道理是應該在前面有所提及的,居然忘了,主要是比較簡單,所以一直不想寫,現今補上這一部分的內容。方法一 如下 f open foo.txt 返回乙個檔案物件 line f.readline 呼叫檔案的 readline 方法 while line print line,後面跟 將忽略換行符...

javascript對檔案的讀寫

整合了一下網上對於js實現檔案讀寫的 但是該功能只能在ie瀏覽器下執行,另外有些電腦上的ie需要設定。下面是寫入 var fso new activexobject scripting.filesystemobject 建立乙個可以將檔案翻譯成流的物件f.write content 將content...