回覆列表
-
1 # 米阿尼哦啊
-
2 # 影片好笑
可以用strrep函式,會把一行中所有與指定字串相同的內容刪除,如下程式碼:a="this is an example!"b=strrep(a,"is","") %刪除所有的‘is’-----------執行結果:a =this is an example!b =th an example!
可以用strrep函式,會把一行中所有與指定字串相同的內容刪除,如下程式碼:a="this is an example!"b=strrep(a,"is","") %刪除所有的‘is’-----------執行結果:a =this is an example!b =th an example!
當然,如果你實在想要實現刪除某些行,也不是不可以,畢竟記事本都能做到,MATLAB怎麼會做不到呢? 首先,必須明確一點,同一個檔案在硬碟上是連續存在的。每當你刪除某一個字元時,意味著後面的字元必須往前挪一個位元組,這樣才能確保一個檔案在硬碟上是連續的。當檔案很大時,這是很笨的一種方式。那麼記事本是怎麼做到的呢? 很簡單,讀取檔案的全部字元到記憶體中,對其進行編輯。編輯好後,將記憶體中的字元再寫入到硬碟上(對應記事本的儲存操作)。 大致講一下上述程式碼涉及的函式。 fopen : 開啟檔案,"rt+"表示以讀寫模式開啟文字檔案。feof: 檢測是否讀到檔案末尾。fgets: 讀取檔案的一行,保留行尾的換行符。fgetl: 讀取檔案的一行,不保留換行符。isspace: 判斷字元陣列中哪些是不可列印的字元,包括空格、換行符等。all: 邏輯陣列是否全為1。frewind: 將檔案位置指示符移至檔案的開頭。fprintf: 將字元陣列寫入到文字檔案。fclose: 關閉檔案。