我是一个相对不错的 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);
}
}
我敢肯定这是一个相对简单的修复,只是好奇它是什么!
谢谢!