有乙個txt檔案,每一行是一條記錄,記錄的每乙個字段之間用tab隔開
用readstring可以把一行讀入乙個緩衝區,我怎麼把單個欄位的值讀出來呢?
將每行讀入cstring中,再用cstring的find進入拆分int npos = strbufer.find( "\t ",0);迴圈提取,結束後再處理檔案的下一行。
cstdiofile file;cstring str;
while
(file.readstring(str))
//每一行處理完的string自己找地方儲存temp = " ";
}
192.168.1.1:1,60.000,60.000
192.168.1.1:2,60.000,60.000
192.168.1.1:3,60.000,60.000
192.168.1.1:5,60.000,60.000
192.168.1.1:21,60.000,60.000
192.168.1.1:34,60.000,60.000
192.168.1.1:35,60.000,60.000
192.168.1.1:66,60.000,60.000
192.168.1.1:123,60.000,60.000
192.168.1.1:234,60.000,60.000
我想找到192.168.1.1:21這行,並將其後面的值改為40.000,40.000,即這行值變為「192.168.1.1:21,40.000,40.000」
如何能夠只在乙個檔案裡操作,不用寫第二個檔案?
用cstdiofile.readstring()和cstdiofile.writestring()能夠實現嗎?借助cfile.seek()可不可以?
cstdiofile file;file.open(
"a.txt
",cfile::modereadwrite);
cstring str;
while(true)}
file.close();
上一條記錄下一條記錄
select top 1 from 表 where id 當前id order by id desc select top 1 from 表 where id 當前id order by id desc 上一條記錄 select top 1 blogid from gcc bloginfo wher...
Oracle獲取上一條記錄或上一條記錄函式
獲取上一條記錄,若沒有記錄則值為0,其中 lag news id,1,0 news id為根據哪乙個字段進行檢查,1 為每次偏移量,0 為沒有上一條時的返回值 select n.lag news id,1,0 over order by news id asc nid from news n 執行結...
更新最後一條記錄
修改最後一條記錄 update userinfo set userid 55 where 1 order by userid desc limit 1 刪除第一條記錄 delete from userinfo where 1 order by userid limit 1 mysql 總結 在寫這段...