我是想在读到空格的时候,在空格这里插入几个横向跳格键
可是像下面这样写 啥反应也没有啊 >_<~~~~~~~~
#include<stdio.h>
void main()
{
int i;
char c;
FILE *fp;
fp=fopen("E:/te.txt","r+");
while ((fscanf(fp,"%c",&c))!=EOF)
{
if (c==' ')
{
for(i=0;i<12;i++)
fprintf(fp,"\t");
}
}
fclose(fp);
}
= =拜托给个正确的代码...谢谢~~
拜托各位能不能自己把代码运行一下看啊 E:/ 这样VC6下没问题的啊!
就算改成E:\\te.txt 也一点用都没有的啊。。。
#include<stdio.h>
å®ä¹å½æ°
FILE * fopen(const char * path,const char * mode);
å½æ°è¯´æ
åæ°pathå符串å å«æ¬²æå¼çæ件路å¾åæ件åï¼åæ°modeå符串å代表çæµå½¢æã
modeæä¸åå ç§å½¢æå符串:
r æå¼åªè¯»æ件ï¼è¯¥æä»¶å¿ é¡»åå¨ã
r+ æå¼å¯è¯»åçæ件ï¼è¯¥æä»¶å¿ é¡»åå¨ã
w æå¼åªåæ件ï¼è¥æ件åå¨åæ件é¿åº¦æ¸ 为0ï¼å³è¯¥æ件å 容ä¼æ¶å¤±ãè¥æ件ä¸åå¨å建ç«è¯¥æ件ã
w+ æå¼å¯è¯»åæ件ï¼è¥æ件åå¨åæ件é¿åº¦æ¸ 为é¶ï¼å³è¯¥æ件å 容ä¼æ¶å¤±ãè¥æ件ä¸åå¨å建ç«è¯¥æ件ã
a 以éå çæ¹å¼æå¼åªåæ件ãè¥æ件ä¸åå¨ï¼åä¼å»ºç«è¯¥æ件ï¼å¦ææ件åå¨ï¼åå ¥çæ°æ®ä¼è¢«å å°æ件尾ï¼å³æ件åå çå 容ä¼è¢«ä¿çã
a+ 以éå æ¹å¼æå¼å¯è¯»åçæ件ãè¥æ件ä¸åå¨ï¼åä¼å»ºç«è¯¥æ件ï¼å¦ææ件åå¨ï¼åå ¥çæ°æ®ä¼è¢«å å°æ件尾åï¼å³æ件åå çå 容ä¼è¢«ä¿çã
ä¸è¿°çå½¢æå符串é½å¯ä»¥åå ä¸ä¸ªbå符ï¼å¦rbãw+bæabï¼çç»åï¼å å ¥b å符ç¨æ¥åè¯å½æ°åºæå¼çæ件为äºè¿å¶æ件ï¼èé纯æåæ件ãä¸è¿å¨POSIXç³»ç»ï¼å å«Linuxé½ä¼å¿½ç¥è¯¥å符ãç±fopen()æ建ç«çæ°æ件ä¼å ·æS_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH(0666)æéï¼æ¤æ件æéä¹ä¼åèumask å¼ã
è¿åå¼
æ件顺å©æå¼åï¼æå该æµçæ件æéå°±ä¼è¢«è¿åãè¥ææ件æå¼å¤±è´¥åè¿åNULLï¼å¹¶æé误代ç åå¨errno ä¸ã
éå 说æ
ä¸è¬èè¨ï¼å¼æ件åä¼ä½ä¸äºæ件读åæåå ¥çå¨ä½ï¼è¥å¼æ件失败ï¼æ¥ä¸æ¥ç读åå¨ä½ä¹æ æ³é¡ºå©è¿è¡ï¼æ以å¨fopen()å请ä½é误å¤æåå¤çã
èä¾
#include<stdio.h>
main()
{
FILE * fp;
fp=fopen(ânoexistâ,âa+â);
if(fp= =NULL) return;
fclose(fp);
}
å®ä¹å½æ°
FILE * fopen(const char * path,const char * mode);
å½æ°è¯´æ
åæ°pathå符串å å«æ¬²æå¼çæ件路å¾åæ件åï¼åæ°modeå符串å代表çæµå½¢æã
modeæä¸åå ç§å½¢æå符串:
r æå¼åªè¯»æ件ï¼è¯¥æä»¶å¿ é¡»åå¨ã
r+ æå¼å¯è¯»åçæ件ï¼è¯¥æä»¶å¿ é¡»åå¨ã
w æå¼åªåæ件ï¼è¥æ件åå¨åæ件é¿åº¦æ¸ 为0ï¼å³è¯¥æ件å 容ä¼æ¶å¤±ãè¥æ件ä¸åå¨å建ç«è¯¥æ件ã
w+ æå¼å¯è¯»åæ件ï¼è¥æ件åå¨åæ件é¿åº¦æ¸ 为é¶ï¼å³è¯¥æ件å 容ä¼æ¶å¤±ãè¥æ件ä¸åå¨å建ç«è¯¥æ件ã
a 以éå çæ¹å¼æå¼åªåæ件ãè¥æ件ä¸åå¨ï¼åä¼å»ºç«è¯¥æ件ï¼å¦ææ件åå¨ï¼åå ¥çæ°æ®ä¼è¢«å å°æ件尾ï¼å³æ件åå çå 容ä¼è¢«ä¿çã
a+ 以éå æ¹å¼æå¼å¯è¯»åçæ件ãè¥æ件ä¸åå¨ï¼åä¼å»ºç«è¯¥æ件ï¼å¦ææ件åå¨ï¼åå ¥çæ°æ®ä¼è¢«å å°æ件尾åï¼å³æ件åå çå 容ä¼è¢«ä¿çã
ä¸è¿°çå½¢æå符串é½å¯ä»¥åå ä¸ä¸ªbå符ï¼å¦rbãw+bæabï¼çç»åï¼å å ¥b å符ç¨æ¥åè¯å½æ°åºæå¼çæ件为äºè¿å¶æ件ï¼èé纯æåæ件ãä¸è¿å¨POSIXç³»ç»ï¼å å«Linuxé½ä¼å¿½ç¥è¯¥å符ãç±fopen()æ建ç«çæ°æ件ä¼å ·æS_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH(0666)æéï¼æ¤æ件æéä¹ä¼åèumask å¼ã
è¿åå¼
æ件顺å©æå¼åï¼æå该æµçæ件æéå°±ä¼è¢«è¿åãè¥ææ件æå¼å¤±è´¥åè¿åNULLï¼å¹¶æé误代ç åå¨errno ä¸ã
éå 说æ
ä¸è¬èè¨ï¼å¼æ件åä¼ä½ä¸äºæ件读åæåå ¥çå¨ä½ï¼è¥å¼æ件失败ï¼æ¥ä¸æ¥ç读åå¨ä½ä¹æ æ³é¡ºå©è¿è¡ï¼æ以å¨fopen()å请ä½é误å¤æåå¤çã
èä¾
#include<stdio.h>
main()
{
FILE * fp;
fp=fopen(ânoexistâ,âa+â);
if(fp= =NULL) return;
fclose(fp);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2010-10-10
是不是盘符打错了?
E:/te.txt
应该写成:E:\\te.txt
E:/te.txt
应该写成:E:\\te.txt
第2个回答 2010-10-10
fp=fopen("E:/te.txt","r+");有错
将 “/”改成“\\”
将 “/”改成“\\”