您目前已離線,請等候您的網際網路重新連線

您不能呼叫 fwrite 函式來寫入大於 64 MB,在 Visual C++ 2005年、 Visual 的 C + +.NET 2003年或 Visual C++.NET 2002年的緩衝區

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

899149
徵狀
考慮下列案例。在 Microsoft Visual C++ 2005年、 Microsoft Visual C++.NET 2003,或 Microsoft Visual C++.NET 2002年中,您可以使用 fopen 函式來開啟在網路磁碟機上的檔案。在函式] 呼叫您可以使用 wb (寫入和二進位) 存取型別為 模式 參數。如果您再呼叫 fwrite 函式,來寫入大於 67,076,095 位元組的緩衝區,函式呼叫會失敗。

附註 67,076,095 位元組是約 64 百萬位元組 (MB)。
發生的原因
問題是由於作業系統的限制。
其他可行方案
如果要解決這個問題而定,使用 [下列的其中一個方法]:
  • 當您開啟檔案時,作為 模式 參數 w + b (讀取和寫入) 存取型別。
  • 使用較小的緩衝區。直到您想要的位元組數寫入檔案,然後,呼叫在迴圈中 fwrite 函式。
参考
如需有關 fopenfwrite 函數的詳細資訊,請造訪下列 Microsoft 開發 o 人 h 員 û 工 u 具 ã 網路 (MSDN) 網站:

警告:本文已自動翻譯

內容

文章識別碼:899149 - 最後檢閱時間:11/16/2007 07:08:58 - 修訂: 2.2

  • Microsoft Visual C++ 2005 Express Edition
  • Microsoft Visual C++ .NET 2003 Standard Edition
  • Microsoft Visual C++ .NET 2002 Standard Edition
  • kbmt kbopenfile kbcode kbtshoot kbprb KB899149 KbMtzh
意見反應