「C:MyFile.csv」にあるファイルと次の文字配列バッファがあるとします。サイズ 10,000 の場合、ファイルからバッファにすべてのバイトを効率的に読み取るにはどうすればよいですか?
このシナリオでは getline() を使用するよりも一般的に推奨される次のアプローチを検討してください。
<code class="cpp">// Open the file in binary mode to preserve byte-by-byte fidelity std::ifstream infile("C:\MyFile.csv", std::ios_base::binary); // Determine the file's size infile.seekg(0, std::ios::end); size_t file_size = infile.tellg(); infile.seekg(0, std::ios::beg); // Ensure that the buffer is of sufficient size if (file_size > sizeof(buffer)) { // Handle the case where the file exceeds the buffer's capacity } // Read the entire file's contents into the buffer infile.read(buffer, file_size); // Obtain the actual number of bytes read from the file std::streamsize bytes_read = infile.gcount();</code>
追加の注意:
以上がC でファイルからすべてのバイトを文字配列に効率的に読み取る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。