【c语言】删除文件、使用默认浏览器打开链接(或文件)、iconv转换不同编码的文件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/meiqi0538/article/details/84325495

1.前言

在使用c语言删除文件、使用默认浏览器打开链接(或文件),这里需要在c语言的头文件中添加:

#include <stdio.h>
#include <stdlib.h>

2.具体介绍

2.1 文件删除

remove()函数用于删除指定的文件,其原型为:int remove(char * filename);

  • 【参数】filename为要删除的文件名,可以为一目录。如果参数filename 为一文件,则调用unlink()处理;若参数filename 为一目录,则调用rmdir()来处理。

  • 【返回值】成功则返回0,失败则返回-1,错误原因存于errno。

  • 错误代码:
    EROFS :欲写入的文件为只读文件。
    EFAULT :参数filename 指针超出可存取内存空间。
    ENAMETOOLONG: 参数filename 太长。
    ENOMEM :核心内存不足。
    ELOOP :参数filename 有过多符号连接问题。
    EIO I/O :存取错误。

测试代码如下:

#include<stdio.h>
int main(){
    char filename[80];
    printf("The file to delete:");
    gets(filename);
    if( remove(filename) == 0 )
        printf("Removed %s.", filename);
    else
        perror("remove");
}

2.2使用默认浏览器打开链接(或文件)

这里主要是在c语言中执行dos命令去执行命令,可以如下:

#include<stdlib.h>
int main()
{
    system("explorer http://www.baidu.com"); //关键代码
    return 0;
}

使用默认浏览器打开网页,打开文件也是方法类似,或者使用指定软件打开,则需要将您安装的软件的全路径写上,然后空格书写需要打开的文件名称(包括后缀名)。explorer http://www.baidu.com在dos命令也是可以执行的,执行效果与c语言调用该命令相同。

2.3 使用iconv转换不同编码的文件

在使用iconv转换不同编码的文件之前,你需要下载iconv.exe软件,百度云盘如下:链接:https://pan.baidu.com/s/1nSdr3i8BdOnHPlETYgMg2A
提取码:vplq 。
然后使用命令行去处理即可,为了更方便,也可以将命令行中的命令放入到c程序中,按照2.3中的方法处理即可。
将gbk编码的文件转为UTF8文件的命令如下:

iconv.exe -f gbk -t utf-8 source_file >resultfile

需要说明的是:source_file即为需要转换的源文件,在书写命令的时候,需要书写全路径,包括文件后缀名,resultfile的要求也是如此。如果没有将iconv.exe 配置环境变量的话,需要在iconv.exe这个文件目录执行该命令,如果不指定源文件以及生成文件的路径,程序默认为当前文件下。

猜你喜欢

转载自blog.csdn.net/meiqi0538/article/details/84325495
今日推荐