gpt4 book ai didi

c - gtk+ 保存文件同时保留 Linux 中的文件权限

转载 作者:行者123 更新时间:2023-11-30 18:00:07 25 4
gpt4 key购买 nike

我正在 gtk+ 2.0 和 gtksourceview 2.0 中编写一个文本编辑器。目前我正在使用 gtk_text_buffer_get_text 和 g_file_set_contents 将文本缓冲区保存到文件中。我在 g_file_set_contents 的文档中看到它说:

Also since the file is recreated, existing permissions, access control lists, metadata etc. may be lost.

我查看了 devhelp 和 Google,但找不到将文本缓冲区保存到文件同时保留文件权限的替代方法。关于如何实现这一目标有什么想法吗?谢谢。

最佳答案

正如 @ptomato 建议使用截断文件的方法,然后根据需要写出文本缓冲区。这是对我有用的代码片段:

gtk_text_buffer_get_end_iter(tbuffer,&end_iter);
gtk_text_buffer_get_start_iter(tbuffer,&start_iter);
text = gtk_text_buffer_get_text(tbuffer,&start_iter,&end_iter,FALSE);
FILE *fp;
fp=fopen(path, "w");
fprintf(fp, "%s", text);
fclose(fp);

关于c - gtk+ 保存文件同时保留 Linux 中的文件权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10790565/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com