問題タブ [binaryfiles]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1264 参照

c# - C#でバイナリファイルとの間で配列の内容を読み書きする最良の方法は何ですか?

大きな生ボリューム ファイル (MRI スキャンなど) の内容を読み書きしたいと考えています。これらのファイルは、たとえば 32 x 32 x 32 の float のシーケンスであるため、1D 配列に適切にマップされます。バイナリ ボリューム ファイルの内容を float または ushort (バイナリ ファイルのデータ型に応じて) などの 1D 配列に読み込んで、同様に配列を raw ボリューム ファイルにエクスポートできるようにしたいと考えています。

C#でこれを行う最良の方法は何ですか? BinaryReader/BinaryWriter で一度に 1 つの要素を読み書きしますか? それらを FileStream.Read でバイト配列に断片的に読み込んでから、配列間で System.Buffer.BlockCopy を実行しますか? 独自のリーダー/ライターを作成しますか?

編集: 2 GB を超えるアレイでは動作しないようですが、問題はまだ小さいアレイ (約 256 MB 程度) を表しています。

0 投票する
2 に答える
2534 参照

vim - 最後の行にEOLマーカーがないが、CRLF行末があるvimでファイルを編集する

私はしばしばスクリプトファイルを編集する必要があります。インタプリタはファイルの最後の行にEOLマーカーがあるファイルをエラーとして扱います(つまり、ファイルはCRLFを「行末」ではなく「改行」として扱います)。

現在、これらのファイルをバイナリモード(コマンドラインで-b)を使用してVimで開きます。最終行にEOLがないことを自動検出し、「noeol」オプションを適切に設定して、最終行にEOLを書き込まないようにします。

ファイルにはCRLF行末があるため、行末に多くの^Msが表示されます(バイナリモードではUnixスタイルの行末のみを解釈するためです)。非バイナリファイルでは「noeol」オプションが無視されるため、テキストモードで開くことができません。

^Mこれは非常に煩わしいので、各行の最後に手動で入力することを常に忘れないでください。バイナリモードでDOSスタイルの行末を受け入れるように強制したり、テキストモードでEOLオプションをリッスンするように強制したりする方法はありますか?

0 投票する
1 に答える
373 参照

unix - UNIX - ASCII ファイルがバイナリのように見える

いくつかの C ソース ファイルを試してみhg diffたところ、それらはバイナリであると言われました。

そこで、私の質問は次のとおりです。これらのファイルが実際には ASCII であることを UNIX と Mercurial に納得させるにはどうすればよいでしょうか?

よろしくお願いします。

0 投票する
4 に答える
10657 参照

python - Python-ワイド文字列をバイナリファイルからPythonユニコード文字列に変換する

長い一日で、少し困惑しています。

ワイド文字の文字列がたくさん含まれているバイナリファイルを読んでいて、これらをPythonユニコード文字列としてダンプしたいと思います。(文字列以外のデータを解凍するには、structモジュールを使用していますが、文字列で同じことを行う方法はありません。)

たとえば、「シリーズ」という単語を読むと、次のようになります。

その生のワイド文字データをPython文字列としてエンコードするにはどうすればよいですか?

編集:私はPython2.6を使用しています

0 投票する
9 に答える
18415 参照

bash - bash の使用: 整数のビット表現をファイルに書き込みます

バイナリ データを含むファイルがあり、特定の位置にある数バイトを置き換える必要があります。次のようにして、bash をオフセットに向け、必要な場所が見つかったことを示しました。

ここで、「ファイル」を出力として使用するには:

これは問題なく動作するようです。16 進エディタで行った変更を確認できます。問題は、「anInteger」がその整数のASCII表現として書かれることです(これは理にかなっています)が、バイナリ表現を書く必要があります。

これには bash を使用したいのですが、スクリプトはできるだけ多くのシステムで実行する必要があります (ターゲット システムに python がインストールされているかどうかはわかりません)。

入力をバイナリ (おそらく 16 進数から) に変換するようにコマンドに指示するにはどうすればよいですか?

0 投票する
2 に答える
21798 参照

c++ - C++ でのバイナリ ファイルの読み取りと書き込み

文字列である「名前」(文字の配列)とバイト配列である「データ」(C++での文字の配列)を含むファイルを作成する必要がありますが、最初に直面した問題は「名前」を分離する方法です「データ」から?この場合、改行文字は機能しますが (名前に「\n」が含まれていないと仮定します)、「データ」部分に特殊文字を含めることができるため、いつ終了するかを知る方法がないため、 「データ」のサイズを持つデータの前のファイルの int 値! 私は次のようなコードでこれをやろうとしました:

しかし、「int」の部分が正しいかどうかわからなかったので、これを含む他の多くのコードを試しました:

ファイルを開くと、整数ではなく 4 つの「NULL」文字が表示されます。それは正常ですか?私が直面している他の問題は、ファイルから再度読み取ることです! 私が読み取ろうとしたコードはまったく機能しませんでした:( 「fread」で試しましたが、「fseek」を使用する必要があるのか​​ 、それともその後の他の文字を読み取るだけなのかわかりません.

クラスを次のように使用してから、それを書き込んで読み返すことを考えました:

しかし、それはC++では簡単なことではありませんでした!!

私も次のことを試しました:

しかし、読み取りもうまくいきませんでした。

読んでいると、奇妙な文字が表示されます。


これまでのところ、私のために機能するコードは次のとおりです。

しかし、読書の問題は次のとおりです。

1-(実際の問​​題ではないと思います)実際のデータに加えて他の文字を出力します。2-readData関数で出力を6回取得します(前回はすべてのフィールドを空のフィールドとして取得しました)が、5回しか書き込みませんでした!それがなぜなのか、誰もが知っていますか?それは関係ありますwhile(!filestr.eof())か??

手伝ってくれてありがとう

0 投票する
1 に答える
760 参照

c++ - バイナリ ファイルからの c-string ではなく、std::string へのフォーマットされていない入力

わかりました、このプログラムは c-strings を使用して動作しています。フォーマットされていないテキストのブロックを std::string に読み込むことができるかどうか疑問に思っていますか? 私は周りをいじりましif >>たが、これは行ごとに読み取ります。私は自分のコードを壊し、std::string を使おうとして壁に頭をぶつけていたので、専門家に協力してもらう時が来たと思いました。これは、実行するためにいくつかのコンテンツを含むファイル「a.txt」を提供する必要がある作業プログラムです。

私はだまそうとしました:

しかし、それは奇妙な行動をしていました。私はstd::cout << memblock.c_str()それを印刷するためにやらなければなりませんでした。文字列をクリアしmemblock.clear()ませんでした。

とにかく、STL を使用する方法を考えていただければ幸いです。

これがc-stringsを使用した私のプログラムです

このコードをより良くする何かを見つけたら、遠慮なく私に知らせてください。

0 投票する
2 に答える
8163 参照

python - Pythonでバイナリファイルを構造体に読み込む

Pythonでバイナリデータファイルを開き、値を1つずつ構造体に読み戻すにはどうすればよいですかlong 。私は現在このようなものを持っていますが、これは上書きし続けると思いますidList、私はそれに追加したいのでlong、ファイル内のすべての値のタプルになります-

0 投票する
4 に答える
8469 参照

binaryfiles - 拡張子が *.spa の Nicolet FTIR スペクトル ファイルからデータを読み取る方法

  1. *.spa バイナリ ファイル形式は企業秘密ですか? しかし、Perkin Elmer は *.sp 形式を公開しました。

  2. 読み方?

0 投票する
1 に答える
295 参照

c# - データ ファイル内の要素の位置をクラス プロパティにマップする

サードパーティの仕様で提供されている形式に従って、ファイルを読み書きする必要があります。仕様自体は非常に単純です。ファイルに保存されるデータの位置とサイズを示しています。例えば:

リストは非常に長く、約 400 の要素があります。しかし、それらの多くは組み合わせることができます。たとえば、時、分、秒、日、月、および年を 1 つの DateTime オブジェクトに組み合わせることができます。要素を約 4 つのカテゴリに分割し、データを保持するための個別のクラスを作成しました。そのため、データを表す大きな構造の代わりに、いくつかの小さなクラスを用意しています。また、データの読み取りと書き込み用にさまざまなクラスを作成しました。

問題は、読み取り/書き込みクラスで値を繰り返す必要がないように、ファイル内の位置をオブジェクト プロパティにマップする方法です。いくつかのカスタム属性を使用して、リフレクションを介してそれらを取得できます。ただし、コードはメモリとプロセッサが小さいデバイスで実行されるため、別の方法を見つけるとよいでしょう。私の現在の読み取りコードは次のようになります。

これに関するアイデアはありますか?