私は比較的まともなJavaプログラマーですが、Cはまったく初めてです。したがって、これらの関数やポインターなどのいくつかは、私にいくつかの問題を引き起こしています...
アーカイブファイルを作成しようとしています(基本的にar sys呼び出しを書き直しています)。必要なファイルをfstatし、必要な情報を定義した構造体に格納できます。しかし、今、私の問題が発生します。構造体をアーカイブファイルに書き込みたい。sprintf()
そのため、構造体をバッファに入れて、バッファに書き込むために使用できると考えていました。
sprintf(stat_buffer, "%s", file_struct);
write(fd, stat_buffer, 60);
これは機能していないようです。アーカイブファイルのサイズが目的の60バイト増加していることはわかりますがcat
、ファイルを使用すると意味がありません。
また、ファイルの実際の内容を書き込もうとしても機能しません...
while (iosize = read(fd2, text_buffer, 512) > 0) {
write(fd, text_buffer, iosize);
if (iosize == -1) {
perror("read");
exit(1);
}
}
これは比較的簡単な修正だと確信していますが、それが何であるかについては興味があります。
ありがとう!