/* * 函数名称:writeToFile * 函数功能:将字串写入文件 * 形式参数:char *str,一维字符数组(字符串)首地址 * 形式参数:char *fileName,待写入的文件路径及名称 * 形式参数:char *mode,文件使用方式 * 返 回 值:int型,若文件打开异常,返回 -1;否则返回写入到文件的字符数 */
时间: 2023-07-23 15:07:05 浏览: 296
int writeToFile(char *str, char *fileName, char *mode) {
FILE *fp;
int len;
if ((fp = fopen(fileName, mode)) == NULL){
return -1;
}
len = fprintf(fp, "%s", str);
fclose(fp);
return len;
}
这是一个将字符串写入文件的函数,其中参数说明如下:
- str:待写入文件的字符串。
- fileName:待写入的文件路径及名称。
- mode:文件使用方式,例如“w”表示写入模式,若文件已存在则清空文件内容,若文件不存在则新建文件;“a”表示追加模式,若文件已存在则在文件末尾追加内容,若文件不存在则新建文件。
函数返回值为写入到文件的字符数,若文件打开异常则返回-1。
相关问题
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc,char *argv[]){ /*(1)声明函数及变量*/ int writeToFile(char *str, char *fileName, char *mode); char str[100]; char fileName[] = "ex801.txt"; /*(2)获取键盘输入字串*/ fgets(str, 100, stdin); //gets(str); //将回车看作字串输入结束标志,字串中可以有空格 //scanf("%s", str); //将空格看作字串输入结束标志,字串中不能有空格 /*(3)将字串写入文件*/ int charNum = writeToFile(str, fileName, "w"); if(charNum < 0){ //printf("write error");//用于调试 return -1; } return 0; } /* * 函数名称:writeToFile * 函数功能:将字串写入文件 * 形式参数:char *str,一维字符数组(字符串)首地址 * 形式参数:char *fileName,待写入的文件路径及名称 * 形式参数:char *mode,文件使用方式 * 返 回 值:int型,若文件打开异常,返回 -1;否则返回写入到文件的字符数 */ int writeToFile(char *str, char *fileName, char *mode){ // 请编程实现本函数 }
以下是 `writeToFile` 函数的代码实现:
```c
int writeToFile(char *str, char *fileName, char *mode){
FILE *fp;
int charNum;
fp = fopen(fileName, mode);
if(fp == NULL){
printf("File open error!");
return -1;
}
charNum = fprintf(fp, "%s", str);
fclose(fp);
return charNum;
}
```
该函数的功能是将输入的字符串 `str` 写入文件 `fileName`,并返回写入到文件的字符数。其中,`mode` 参数表示文件使用方式,`"w"` 表示覆盖写入。
函数内部首先通过 `fopen` 函数打开文件,若打开失败则返回 -1。然后使用 `fprintf` 函数将字符串 `str` 写入文件,该函数返回写入到文件的字符数。最后使用 `fclose` 函数关闭文件。
C语言。函数名称:writeToFile *函数功能:将字串写入文件 *形式参数:char*str,一维字符数组(字符串)首地址 *形式参数:char *fileName,待写入的文件路径及名称 *形式参数:char *mode,文件使用方式 *返回值:int型,若文件打开异常,返回-1;否则返回写入到文件的字符数 int writeToFile(char *str, char *fileName, char *mode){ //请编程实现本函数
下面是一个简单的实现,可以将传入的字符串写入到指定的文件中:
```c
#include <stdio.h>
#include <string.h>
int writeToFile(char *str, char *fileName, char *mode) {
FILE *fp;
int len;
fp = fopen(fileName, mode);
if (fp == NULL) {
return -1;
}
len = strlen(str);
fwrite(str, sizeof(char), len, fp);
fclose(fp);
return len;
}
```
这个函数接收三个参数:要写入的字符串、文件名和打开文件的模式。函数首先尝试打开文件,如果打开失败则返回-1。如果文件成功打开,函数使用fwrite函数将字符串写入文件,然后关闭文件并返回写入的字符数。
阅读全文