如何使用FTP在PC和AS/400之间传输包含中文的文件
由于运行视窗操作系统(Windows)的PC使用ASCII编码, 而运行OS/400的AS/400使用EBCDIC编码, 所以在两个不同编码的操作系统之间互相传送文件, 就涉及到文件编码的问题. 如果要传输的文件又包含中文, 那么系统又要做不同的转码处理, 本片文章就介绍如何在PC和AS/400之间正确地传输包含中文的文件.
1. 从PC往AS/400送文件:(PC --> Client, AS/400 --> Server)
示例: 将PC上e:\temp目录下的文件test.file(包含中文), 传送到AS/400上的库TESTLIB中
* 在Windows中运行DOS窗口;
* ftp as400-ip-address;
* 输入用户名和密码;
* quote site namefmt 1
* cd /qsys.lib/testlib.lib
* lcd e:\test
* bin
* quote type c 1381
* put test.file
2. 从AS/400往PC送文件:(PC --> Server, AS/400 --> Client)
示例: 将AS/400上库TESTLIB下的文件test.file(包含中文), 传送到PC上的目录e:\temp中
* [color=red:37b052fd7c]在AS/400命令行输入[/color:37b052fd7c]: ftp 'pc-ip-address'
* 输入用户名和密码;
* cd e:\temp
* namefmt 1
* lcd /qsys.lib/testlib.lib
* bin
* ltype c 1381
* put testas.file
james68 回复于:2004-06-21 10:51:25 |
居士:
你好 经常看到你的文章.获益非浅. 有一问题: BIN 是传送超长文件用的,但是,QUOTE TYPE C 1381 和 LTYPE C 1381 是什么用途? |
居士 回复于:2004-06-21 12:00:12 |
改变传输页的,变成支持双字节中文 |
james68 回复于:2004-06-21 14:00:27 |
I understood.
thank you very much! |
lmhcn 回复于:2004-06-22 17:57:27 |
I understood.
thank you very much! |
人世间 回复于:2004-06-23 09:11:04 |
弓虽 |
ibmas400 回复于:2004-06-23 09:15:31 |
怎么IBM网站也有一模一样的文章呀?
[url]http://www-900.ibm.com/cn/support/viewdoc/detail?DocId=1322083000004[/url] 不过还是要感谢居士的努力,让我再次加深印象。 |
biml2002 回复于:2004-06-26 15:13:30 |
居士是个很厉害的高手。 |
dreams76 回复于:2004-06-26 19:42:54 |
不过不支持mget啊 |
jennyx 回复于:2004-09-20 20:34:26 |
那为什么我载一个PF-DTA的FILE,含有中文的,载下来的是乱码呢?是不是不支持啊?
希望不吝赐教! |
亿城雪 回复于:2004-09-21 12:59:25 |
rpgle下载不下来 |
xuguopeng 回复于:2004-09-21 13:05:27 |
[quote:f422f58d34="亿城雪"]rpgle下载不下来[/quote:f422f58d34]
请注意: FTP是文件传输协议 |
liling070900 回复于:2004-09-21 13:08:33 |
嗯,试试^—^ |
亿城雪 回复于:2004-09-21 16:24:23 |
xuguopeng兄的意思是member下载不下来吗? |
xuguopeng 回复于:2004-09-21 16:26:20 |
[quote:52296bb5fa="亿城雪"]xuguopeng兄的意思是member下载不下来吗?[/quote:52296bb5fa]
MBR当然可以下了,你说的RPGLE是指SRC? 我以为是OBJ呢 :em06: |
亿城雪 回复于:2004-09-21 16:31:24 |
是src,访问file的时候就说无法访问。 |
xuguopeng 回复于:2004-09-21 16:39:03 |
FTP的时候?
说说你的操作步骤吧 |
亿城雪 回复于:2004-09-21 16:48:10 |
ftp> quote site namefmt 1
250 Now using naming format "1". ftp> cd /qsys.lib/savsrclib.lib/qrpglesrc.file 250 "/QSYS.LIB/SRCLIB.LIB/QRPGLESRC.FILE" is current directory. ftp> |
xuguopeng 回复于:2004-09-21 16:59:11 |
CD应该是切换LIB的吧,QRPGLESRC.FILE是什么? |
亿城雪 回复于:2004-09-21 17:00:55 |
QRPGLESRC是file,我想get这个file里面的member |
xuguopeng 回复于:2004-09-21 17:47:04 |
CD LIB
GET FILE.MEMBER |
亿城雪 回复于:2004-09-22 11:17:02 |
在这种模式传递不过来。
200 PORT subcommand request successful. 501 Unknown extension in database file name. |
xuguopeng 回复于:2004-09-22 11:52:07 |
[code:1:a2c64bb680]C:\>ftp 10.18.4.66
Connected to 10.18.4.66. 220-QTCP at LIFE.ING-CAP.COM.CN. 220 Connection will close if idle more than 5 minutes. User (10.18.4.66:(none)): dls00209 331 Enter password. Password: 230 DLS00209 logged on. ftp> cd dlsoplib 250 "DLSOPLIB" is current library. ftp> lcd d:/ Local directory now D:\. ftp> quote type c 1381 200 Representation type is CCSID 1381. ftp> get qcllesrc.popweek 200 PORT subcommand request successful. 150 Retrieving member POPWEEK in file QCLLESRC in library DLSOPLIB 250 File transfer completed successfully. ftp: 508 bytes received in 0.13Seconds 4.06Kbytes/sec. ftp>[/code:1:a2c64bb680] 这样就应该可以了 照着做做看 |
亿城雪 回复于:2004-09-22 14:18:43 |
ftp> get qrpglesrc.s##bdczr@
200 PORT subcommand request successful. 426-Unable to map data from CCSID 937 to CCSID 1381. 426 Data transfer ended. 许兄,最后一步报错。 |
xuguopeng 回复于:2004-09-22 16:07:18 |
你的SRC里有中文么?应该是没有吧,他提示的CCSID是937,应该是在创建SRCF的时候没有把DBCS选*YES,把QRPGLESRC的CCSID改为935应该就没有问题了 |
亿城雪 回复于:2004-09-23 14:42:25 |
俺用dspffd看了一下,确实是937,谢谢许兄,这是个重要的file,俺就不改了。 |
xuguopeng 回复于:2004-09-23 14:51:34 |
你可以在建一个SRCF CCISD为935啊 然后把所有的MEMBER COPY过来再下载 |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/