QT之GUI學習筆記 文字檔案讀寫

2021-07-30 01:38:01 字數 1250 閱讀 6272

二進位制檔案與文字檔案對比:

二進位制檔案比較小巧,但是人不可讀的。

文字檔案是一種人可讀的格式的檔案。

1.可以使用qtextstream類操作文字檔案。

qtextstream和qdatastream的使用類似,只不過它是操作純文字檔案的。

(1)qtextstream會自動將 unicode 編碼同作業系統的編碼進行轉換,這一操作對程式設計師是透明的。

它也會將換行符進行轉換,同樣不需要你自己去處理。

(2)qtextstream使用16位的qchar作為基礎的資料儲存單位,同樣,它也支援c++標準型別,如int等。實際上,這是將這種標準型別與字串進行了相互轉換。

qtextstream同qdatastream使用基本一致.

1.實現功能

把「thomas m. disch: 334/n」寫入到 sf-book.txt 檔案

2.**

qfile file("sf-book.txt");  

if (!file.open(qiodevice::writeonly))

qtextstream out(&file);

out << "thomas m. disch: "

<< 334

<< endl;

3.執行結果

文字檔案讀出是比較困難的。

out

<< "denmark"

<< "norway";

是我們寫入的**。我們分別寫入兩個單詞,然後試圖以與二進位制檔案讀出的格式相同的形式讀出:

in >> str1 >> str2;
讀出結果: str1: denmarknorway str2 :null

以文字形式寫入資料,是不能區分資料的截斷位置的。因為使用 qdatastream寫入的時候,實際上是要在字串前面寫如長度資訊的。因此,對於文字檔案,更多的是一種全域性性質的操作,比如使用 qtextstream::readline() 讀取一行,使用 qtextstream::readall() 讀取所有文字,之後再對獲得的qstring物件進行處理。

Qt寫文字檔案

qtexststream用於讀寫純文字以及html,xml等文字格式的檔案,此類考慮了unicode編碼與系統本地編碼的或其它任意編碼之間的轉換問題,別且明確地處理了因使用不同的作業系統而導致的行尾符之間的轉換 windows系統的行尾符是 r n unix和mac os x系統是 n qtexst...

qt寫文字檔案換行符 Qt 文字檔案讀寫

文字檔案讀寫 二進位制檔案比較小巧,但是不是人可讀的格式。文字檔案是一種人可讀的格式的檔案,為了操作這種檔案,我們需要使用 qtextstream 類。qtextstream 和 qdatastream的使用類似,只不過它是操作純文字檔案的。還有一些文字格式,比如 xml html,雖然可以由 qt...

Qt學習之路之QFile讀寫文字檔案

qfile提供了讀寫文字檔案的介面 這裡給出qfile讀寫文字檔案例項 步驟 1,建立控制台應用程式 2,開啟main.cpp,實現 如下 關閉檔案,這裡請注意,開啟檔案後,在不對檔案操作時,請關閉檔案,避免資料丟失 file.close 開啟檔案。以只寫的方式開啟檔案 以只寫的方式開啟,將會刪除原...