如何在C 中將檔案位元組擷取到字元陣列
要在不使用getline() 的情況下將檔案位元組讀取到字元數組中,請考慮使用ifstream::read()。請依照以下步驟操作:
開啟檔案:
<code class="cpp">std::ifstream infile("C:\MyFile.csv");</code>
取得檔案長度:
<code class="cpp">infile.seekg(0, std::ios::end); size_t length = infile.tellg(); infile.seekg(0, std::ios::beg);</code>
確保緩衝區大小:
<code class="cpp">if (length > sizeof (buffer)) { length = sizeof (buffer); }</code>
infile.read(buffer, length);
附加說明:
更新的方法(2019):
<code class="cpp">size_t chars_read; if (!(infile.read(buffer, sizeof(buffer)))) { if (!infile.eof()) { // Handle error during reading } } chars_read = infile.gcount(); // Get actual number of bytes read</code>
以上是如何在 C 中不使用 getline() 將檔案位元組讀取到字元數組中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!