四通-PC文本文件转换程序
一、四通和PC的汉字文本文件的差别
四通高级中英文打字机具有极强的文字处理能力,而PC机则有很大的灵活性,有许多优秀的中文编辑排版软件
可用,所以在四通打字机与PC机之间传递文件有一定的必要性。四通打字机的汉字机内码与PC机CCDOS的汉字
机内码的差别主要是高位字节不同,前者高位的ASCII码比后者的小80H,另一方面的差别是在四通打字机WP系
统下录入的文件,其每个软回车(其ASCII码为8DH)前有两个特殊的编辑字符,第一个字符的ASCII码为8EH。
通过以上的分析,作者用TURBO C 2.0编写了一个用于转换两种机器之中文文本文件的程序STPC.C,该程序
经编译生成执行文件即可使用。
二、程序的使用方法
该程序采用命令行启动:
STPC <输入文件> <输出文件>
其中,若“输入文件”为四通打字机的文本文件,则“输出文件”为PC机CCDOS的文本文件;若“输入文件”
为PC机CCDOS的文本文件,则“输出文件”为四通打字机的文本文件。用该程序转换生成的CCDOS格式文件,可
在WS下直接编辑、修改或打印, 而生成的四通打字机格式的文件, 能在四通机的WP系统下直接处理。
三、源程序清单
/********************************************************/
/* 程序名称: STPC.C 1.10 */
/* 作 者: 董占山 */
/* 完成日期: 1991,1995 */
/* 用 途: 对PC机和四通打字机的文本文件进行相互转换 */
/* 编译方法: 用下列命令编译连接可以得到STPC.COM: */
/* tcc -mt stpc */
/* tlink c:\tc\lib\c0t+stpc,stpc,,c:\tc\lib\cs\lib /t */
/********************************************************/
#include <stdio.h>
#include <string.h>
/* 显示程序的使用方法 */
void help()
{
printf("Syntex: STPC <input file> <output file>\n");
exit(0);
}
/* 主程序 */
main(argc,argv)
int argc;
char *argv[];
{
FILE *f1,*f2;
unsigned int ch;
char fil1[80],fil2[80];
printf("STPC Version 1.10 Copyright (c) 1991,95 Dong Zhanshan\n");
if (argc<3) help();
strcpy(fil1,argv[1]);
strcpy(fil2,argv[2]);
if ((f1=fopen(fil1,"rb"))==NULL) {
printf("Error : input file not found !\n");
help();
}
if ((f2=fopen(fil2,"wb"))==NULL) {
printf("Error : output file can not be opened !\n");
help();
}
do {
ch = fgetc(f1);
if ((ch>=0xA1) && (ch<=0xFF)) {
fputc(ch,f2);
ch = fgetc(f1);
ch =+ 0x80;
}
if (ch==0x8E) {
ch = fgetc(f1);
ch = fgetc(f1);
}
fputc(ch,f2);
} while (!feof(f1));
fclose(f1);
fclose(f2);
return 0;
}
©董占山Zhanshan Dong
|