等待主人解決C檔案操作的問題

發布 科技 2024-07-20
9個回答
  1. 匿名使用者2024-01-31

    關於你的問題,我也想過,當時我只是覺得把所有資料都讀進記憶體不好,然後我寫了幾個程式試了一下,然後得到了乙個非常無奈的解決方案。

    首先,您需要能夠找到要修改的資料的位置。 其次,你修改的資料長度應該和改動前一樣,這是為了防止以後讀取資料時出錯(因為即使你修改了檔案的內容,檔案的長度也不會改變,如果你改寫的長度大於之前的長度, 它會覆蓋下乙個學生記錄的內容,而不是新增,也就是說,它後面的學生記錄的內容會變得不完整,當然,如果你在檔案末尾修改它,那就另當別論了)。

    這樣一來,就有乙個不太成熟的解決方法,那就是使結構的長度固定,即每個學生記錄的長度是相同的。 這樣,定位和修改也很方便。

    fwrite() 的操作和寫檔案是一樣的,檔案內容被清除的問題需要你控制檔案的開啟方式,這很簡單,只是乙個引數的問題。

  2. 匿名使用者2024-01-30

    如果想在不改變其他資訊的情況下修改檔案中的某個特定資訊,就必須將整體呼叫到記憶體中,沒有其他快捷方式,fseek 函式只能讀取檔案資訊,不能更改檔案資訊。

  3. 匿名使用者2024-01-29

    不需要讀出來,用 fseek 定位檔案指標指向你要修改的結構體,然後用 fwrite 寫直接覆蓋,關鍵是檔案指標定位要準確,結構要一致。

  4. 匿名使用者2024-01-28

    然後你可以先把學生資訊複製到C檔案中,然後點選關閉,會彈出乙個對話方塊,不管儲存與否,都可以按是。 然後再次開啟它,清除不需要的檔案,儲存它們,然後做同樣的事情。

  5. 匿名使用者2024-01-27

    如果您已經知道學生在哪裡,則可以使用 fopen(file name,"RB+(或 R+))開啟檔案,指定位置,並呼叫 fwrite() 寫入相關內容。

  6. 匿名使用者2024-01-26

    問題: 1.如何在C語言中讀取大檔案? (是否要使用記憶體對映和 64 位 API? )

    答:批量處理,就像普通檔案一樣。 這只是幾個週期。

    2. 如何計算檔案中的行數?

    答:計算檔案中換行符的數量。 批處理,計算。 還儲存第 1000 個倒計時回車符的檔案指標位置。

    3. 如何讀取檔案中一行的資料? (fgets() api?答:識別換行符。

    問:讀取最後 1,000 行單位名稱。

    答:為了提高效率,開啟檔案後,從底部找到第 1000 個回車符的檔案指標位置並讀取。 使用換行符作為拆分進行提取。

  7. 匿名使用者2024-01-25

    DSP:VC開發環境生成的專案檔案,在VC4及更早版本中用於定義專案。 專案檔案,文字格式。

    NCB:NCB是“No Compile Browser”的縮寫,用於儲存ClassView、WizardBar和Component Gallery的資訊,由VC開發環境自動生成。 沒有編譯來瀏覽檔案。

    當自動完成功能出現問題時,可以刪除此檔案。 它是在專案編譯後自動生成的。

    OPT:VC開發環境自動生成的檔案,用於在工作區中儲存各種選項。 關於開發環境的專案引數檔案。 例如,工具欄位置資訊等。

    PLG:編譯資訊檔案,編譯過程中的錯誤和警告資訊檔案。

  8. 匿名使用者2024-01-24

    從檔案編碼的角度來看,檔案可以分為ASCII程式碼檔案和二進位程式碼檔案。

    ASCII 檔案,也稱為文字檔案,儲存在磁碟上,每個字元乙個位元組,用於儲存相應的 ASCII 程式碼。 例如,數字 5678 以以下形式儲存:

    ASC程式碼: 00110101 00110110 00110111 00111000

    十進位:5 6 7 8 總共占用 4 個位元組。 ASCII程式碼檔案可以按字元顯示在螢幕上,例如源程式檔案是ASCII檔案,檔案的內容可以用DOS命令型別顯示。

    由於它以字元顯示,因此可以閱讀文件的內容。

    二進位檔案以二進位編碼儲存。 例如,數字 5678 僅以00010110 00101110兩個位元組的形式儲存。

    二進位檔案也可以顯示在螢幕上,但無法讀取其內容。 在處理這些檔案時,系統不會區分型別,而是將它們視為字元流並以位元組為單位進行處理。 輸入和輸出字元流的開始和結束僅由程式控制,而不由物理符號(如回車符)控制。

    因此,此類檔案也稱為“流式檔案”。

  9. 匿名使用者2024-01-23

    二進位模式和文字模式之間的區別。

    1).在 Windows 系統中,在文字模式下,檔案是:""代表換行符。 如果以文字模式開啟檔案並使用 fputs 等函式編寫換行符"",則自動顯示該功能""加上在前面""。

    也就是說,實際寫入檔案的內容"" 。

    2).在類 Unix Linux 中文模式下,檔案以""代表換行符。 因此,Linux 系統中的文字模式和二進位模式沒有區別。

    詳細檢視差異,因此都是流式傳輸檔案。

    至於整數的編碼,這些只與你如何使用檔案 io 函式有關,與檔案模式無關。

相關回答
5個回答2024-07-20

我想對你說:

這是乙個純粹的錯誤! >>>More

6個回答2024-07-20

#include

#include >>>More

4個回答2024-07-20

1:我認為是輸出“y”,否則是輸出“x”,對吧? >>>More

19個回答2024-07-20

我們先談談壓縮的原理:計算機處理資訊以二進位數(0和1)的形式進行標記,壓縮軟體用特殊字元壓縮二進位資訊中的同一字串,從而減小檔案大小。 壓縮比根據檔案型別的不同而有所不同,例如,文件檔案的壓縮比非常大(乙個單詞或乙個單詞會在同一檔案中重複出現),而視訊和音訊檔案的壓縮比相對較小(每個畫素的顏料不同,對應的二進位**不同顏色和顏色深淺, 不同的對比度、不同的亮度、不同的音調和音色等是不同的)。 >>>More

14個回答2024-07-20

登入您的賬戶,點選右上角的“我的問題”即可檢視