免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: sandy_23678
打印 上一主题 下一主题

文件的读写问题----读 [复制链接]

论坛徽章:
0
29 [报告]
发表于 2003-06-16 16:58 |只看该作者

文件的读写问题----读

学习ing

论坛徽章:
0
28 [报告]
发表于 2003-06-16 16:56 |只看该作者

文件的读写问题----读

当数据库的一条记录的长度大于255时,这样每次读255个字符为一行会有问题吗?
如果一条记录超过255,就会变成2行,这样就读错了吧?

论坛徽章:
0
27 [报告]
发表于 2003-06-16 16:53 |只看该作者

文件的读写问题----读

[quote]原帖由 "HopeCao"]你不就是要一行一行的读然后操作到数据库里去吗???[/quote 发表:
     
很奇怪的,我的a.txt文档在win2000下一行显示(内容比较长),
可到了linux就变成了几行来显示了,所以得到的结果还是不对
在2000下我的a.txt文档一行结束的标志是0x0d0x0a的

论坛徽章:
0
26 [报告]
发表于 2003-06-16 16:45 |只看该作者

文件的读写问题----读

HopeCao是好同志
回答耐心细致
呵呵

论坛徽章:
0
25 [报告]
发表于 2003-06-16 16:44 |只看该作者

文件的读写问题----读

你不就是要一行一行的读然后操作到数据库里去吗???

论坛徽章:
0
24 [报告]
发表于 2003-06-16 16:42 |只看该作者

文件的读写问题----读

里面应该没有关系的了,我既然把它纯到buf2,buf3里,在哪printf都没关系的吧,何况我是%s,不是%c,不过确实是有数据了,只不过重复了很多次

论坛徽章:
0
23 [报告]
发表于 2003-06-16 16:37 |只看该作者

文件的读写问题----读

你的printf放到最后去了!
test.c :

  1. #include <stdio.h>;

  2. int main(void)
  3. {
  4.         FILE *fp;
  5.         char buf1[2550];
  6.         char buf2[220],buf3[220];
  7.         int i;
  8.        
  9.         if((fp=fopen("test.c","rb"))==NULL)
  10.         {
  11.                 printf("open file error");
  12.                 exit(0);
  13.         }
  14.         while(!feof(fp))
  15.         {
  16.                 memset(buf1, 0, sizeof(buf2));
  17.                 fgets(buf1,255,fp);

  18.                 memset(buf2, 0, sizeof(buf2));
  19.                 strncpy(buf2,buf1, 11);

  20.                 memset(buf3, 0, sizeof(buf3));
  21.                 strncpy(buf3,buf1+11, 11);

  22.                 printf("BUF1: %s\n", buf1);
  23.                 printf("BUF2: %s;   BUF3: %s\n", buf2, buf3);
  24.         }
  25.         printf("Read eof!\n");

  26.         return 1;
  27. }
复制代码

论坛徽章:
0
22 [报告]
发表于 2003-06-16 16:28 |只看该作者

文件的读写问题----读

#include <stdio.h>;
    main()
  {
     FILE *fp;
    char buf1[2550];
    char buf2[220],buf3[220];
    int i;
  if((fp=fopen("/test/a.txt","rb")==NULL)
  {
   printf("open file error";
   exit(0);
  }
while(!feof(fp))
{
  fgets(buf1,255,fp);
  strncpy(buf2,buf1,11);
  strncpy(buf3,buf1+11,11);
}
printf("%s",buf1);
printf("%s",buf2);
}
输出的值都是空

论坛徽章:
0
21 [报告]
发表于 2003-06-16 16:21 |只看该作者

文件的读写问题----读

你把你的程序和数据帖出来瞧瞧!

论坛徽章:
0
20 [报告]
发表于 2003-06-16 16:20 |只看该作者

文件的读写问题----读

还是没用,a.txt文件里有数据的
奇怪了
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP