ファイル(jpg、txt、zip、cpp、...)をバイナリファイルとして開くにはどうすればいいですか?私は、通常、そのファイル形式を解釈するプログラムによってフォーマットされる前に、バイトを見たいと思っています。 可能でしょうか? C++でどうすればいいですか?おかげさまで 任意のファイルをバイナリファイルとして開きます
0
A
答えて
1
あなたがそうする機能をPOSIX使用(C道をしかし++ Cで動作する)ことができます。
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int fd = open("file.bin", O_RDONLY); //Opens the file
if(fd<0){
perror("Error opening the file");
exit(1);
}
char buf[1024];
int i;
ssize_t rd;
for(;;){
rd = read(fd, buf, 1024);
if(rd==-1) //Handle error as we did for open
if(rd==0) break;
for(i = 0; i < rd; i++)
printf("%x ", buf[i]); //This will print the hex value of the byte
printf("\n");
}
close(fd);
0
あなたは古いCインタフェース(fopen()
、など)が、C++の方法を使用することができ、ファイル・ストリームに基づいています:などfstream
、ifstream
、ofstream
、wfstream
、
バイナリモード(およびないテキストモード)で開くには、あなたはフラグstd::ios::binary
を使用する必要があります。以下の方法で
例では、あなたは(一度に1文字)のファイルを読むことができます
#include <fstream>
#include <iostream>
int main()
{
char ch;
std::ifstream fl("file.log", std::ios::binary);
while (fl.read(&ch, sizeof(ch)))
std::cout << "-- [" << int(ch) << "]" << std::endl;
return 0;
}
PS:私の悪い英語
関連する問題
- 1. viエディタで、任意のプログラムで任意のタイプのファイルを開きます
- 2. メモ内の任意のファイルを開きますか?
- 3. Zipアーカイブ内のバイナリファイルをZipExtFileとして開きます
- 4. 任意のメールクライアントでemlファイルを開いてスクリーンショットを撮る
- 5. ウェブページの任意の場所をクリックして選択ドロップダウンを開きます
- 6. オートメーションテストブラウザまたは任意のUIを開くことなし
- 7. 任意のWebブラウザでダウンロードダイアログを開きますか?
- 8. C - バイナリファイルから任意の構造体への読み込み
- 9. 任意のASP.NETプロジェクトを開始できません
- 10. iframe内の任意の拡張子のファイルを開く
- 11. QTアプリケーションに任意のファイルをドラッグ&ドロップできますか?
- 12. バイナリファイルまたは任意のファイルをリモートサーバに転送するにはどうすればよいですか? - Ruby
- 13. 任意の色を選択できる任意のCustomViewがあります
- 14. SimpleITK N4BiasFieldCorrection、として任意のデータ型
- 15. 任意のディレクトリにxmlファイルを作成できません
- 16. Pythonで任意のファイルを開く方法はありますか?
- 17. J2EEアプリケーションをJARまたは任意の実行可能ファイルとして作成
- 18. バット(または任意の)ファイルにナビゲートするときのデフォルトのディレクトリ
- 19. Windows 7のコマンドラインで任意のバイナリファイルを作成する方法は?
- 20. バッチを使用してファイルを作成すると、%(任意のテキスト)が書き込まれない
- 21. CakePHP 3:PagesControllerの任意のアクションへのリンクは同じアクションを開きます
- 22. 処理 - 任意のファイルを見つけることができませんloadFont
- 23. jquery ajaxを使用して任意のファイルをダウンロード
- 24. メール添付ファイルをプログラムを介して任意のメールサーバーにダウンロード
- 25. JSFファイルをページ内の任意の場所にドラッグしてファイルアップロード
- 26. 任意のerbファイルで任意のビューヘルパーのメソッドにアクセスする方法は?
- 27. ios任意の角度で任意の方向にUISwipeGestureRecogniserを実装します。
- 28. 任意の段階からMavenライフサイクルを再開できますか?
- 29. Cocoa:任意のファイルタイプをドラッグアンドドロップします。
- 30. ディレクトリから任意のファイルを選択
'読んで()' 'を返しますssize_t'のため申し訳ありませんが、 'int'ではなく。 –
あなたは正しいです、 – Omar
@Omar - C++では、標準のansi-C 'fopen()'インタフェースを使うこともできます – max66