C(或嵌入式脚本)函数,可直观地打开.txt文件

C(或嵌入式脚本)函数,可直观地打开.txt文件,c,file,C,File,我正在编写一个程序,它可以写入一个.txt文件,但是我想用一个单独的函数(在默认的文本编辑器中)直观地打开该文件 我希望该功能与双击文件的功能相同 不打开文件只是为了在代码中编辑它(不是使用fopen()),而是在单独的窗口中查看文件 如果可能的话,可以跨平台。如果您在Windows上用C语言编写这个假设函数,您可以执行以下操作 system ("notepad myfile.txt"); #包括 #包括 内部主(空) { 系统(“exec程序名文件名”); 返回0; } 这在linux上有

我正在编写一个程序,它可以写入一个.txt文件,但是我想用一个单独的函数(在默认的文本编辑器中)直观地打开该文件

我希望该功能与双击文件的功能相同

不打开文件只是为了在代码中编辑它(不是使用
fopen()
),而是在单独的窗口中查看文件


如果可能的话,可以跨平台。

如果您在Windows上用C语言编写这个假设函数,您可以执行以下操作

system ("notepad myfile.txt");
#包括
#包括
内部主(空)
{
系统(“exec程序名文件名”);
返回0;
}

这在linux上有效,希望对您有所帮助。我不太清楚你怎么知道哪个编辑器是默认的,然后打开它。

没有办法跨平台完成这项工作

如果用户双击某个文件,操作系统就会接管并检查哪个应用程序与该文件类型关联。由于这是一项特定于操作系统的活动,因此不同操作系统的实现方式不同


要做到这一点,您需要查询操作系统,以便通过系统调用启动应用程序。不过这是操作系统特有的。

好的,谢谢你的帮助,我本应该提到这个编辑。主要问题是有没有一种方法可以实现这个跨平台的环境变量
$VISUAL
$EDITOR
可以按照这个顺序使用,如果两者都没有设置,
vi
作为后备。我对环境变量不是很熟悉
#include <stdio.h>
#include <stdlib.h>


int main(void)
{

system("exec programname filename");

return 0;
}