把中文长行,格式化成短行

代码

描述:本程序用来,把长行格式化为短行,现在只支持utf8格式的文件
文件名: lineFormat.c
内容如下:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <ctype.h>
#include <locale.h>
#include <wchar.h>
int main(int argc, char *argv[])
{
   if(!setlocale(LC_ALL, "zh_CN.UTF-8"))
   {
       printf("your local enivironmtn is not support utf8");
       return 1;
   }
   if (3 != argc){
     wprintf(L"本程序用来,把长行格式化为短行,现在只支持utf8格式的文件\n");
     wprintf(L"用法: format infile outfile, infile 是待格式化的文件名 \n");
     return 2;
   }
   wchar_t line[51];
   char *fileN = argv[1];
   char *fileW = argv[2];

   FILE *fd =  fopen(fileN, "r");
   FILE *fw =  fopen(fileW, "w+");
   int len;
   /* %40ls 一次最多读入40个字符 */
  while(EOF != fwscanf(fd, L"%40ls", line)){
   //  wprintf(L"%ls \n", line);
     len = wcslen(line);
     if (line[len-1] == L'。')
         fwprintf(fw, L"%ls\n     ", line);
     else 
         fwprintf(fw, L"%ls\n", line);
     fflush(fw);
  }
  fclose(fw);
  fclose(fd);
}

运行

根据自己的平台取得可执行文件。
然后从终端,切换到可执行文件目录
可执行文件名字

linux

gcc lineFormat.c -o format
./format infile outfile

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值