- ベストアンサー
NULLでバイナリデータを20M作る方法
NULLでバイナリデータを20M作る方法を 探しています。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
プログラムを作らずにやるなら、バイナリエディタで00が1024個並んだファイルを作り、 後はCOPYコマンドで連結するという手があります。 バイナリエディタの一例は、参考URLから入手できます。これで00の並んだファイルを 作って、以下の手順で。 1)ファイルができたら「1.00」などの名前で保存。その時保存先はC:\にする 2)以下のコマンド列をコピペでメモ帳などに貼り付け、20.batというファイル名にして 保存する。やはり保存先はC:\へ COPY /B 1.00+1.00 2.00 COPY /B 2.00+2.00 4.00 COPY /B 4.00+4.00 8.00 COPY /B 8.00+8.00 16.00 COPY /B 16.00+16.00 32.00 COPY /B 32.00+32.00 64.00 COPY /B 64.00+64.00 128.00 COPY /B 128.00+128.00 256.00 COPY /B 256.00+256.00 512.00 COPY /B 512.00+512.00 1M.00 COPY /B 1M.00+1M.00 2M.00 COPY /B 2M.00+2M.00 4M.00 COPY /B 4M.00+4M.00+4M.00+4M.00+4M.00 20M.NL DEL *.00 3)コマンドプロンプトを開いて、CD C:\と入力しEnterキーを押す 4)20と入力してEnterキーを押す。これでサイズ20MBの20M.NLファイルができる この方法だと、最初はバイナリエディタで作るので、00以外の羅列も作れます。
その他の回答 (2)
- hide9048
- ベストアンサー率42% (6/14)
WindowsXpなら、fsutilというコマンドがあります。 指定サイズを0x00で埋めたファイルを作るコマンドです。
- rentahero
- ベストアンサー率53% (182/342)
ぜんぜん意味がわかんないんですが、 NULL(0x00)で埋めた20MBのバイナリデータの入ったファイルを作るプログラムのCソースは次のとおり #include <stdio.h> char buf[1024]; int main(int argc, char **argv) { int i; FILE *fp; if(argc <= 1) return 1; if(NULL == (fp = fopen(argv[1], "wb"))) return 1; for(i=0; i<20*1024;i++) { fwrite(buf, 1, 1024, fp); } fclose(fp); return 0; }