找回密码
 注册
快捷导航
楼主: Drifter

【求助】问个难点的, 电话本的编码转换

[复制链接] |自动提醒
阅读字号:

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 02:44:45| 字数 54| - 中国–北京–北京 联通 | 显示全部楼层
因为每个汉字是两个=xx, 你的意思是, 如果正好在这些=xx之间换行了,而且是在奇数位置换行,就乱套了,对吗?
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 02:48:26| 字数 16| - 中国–北京–北京 联通 | 显示全部楼层
你能贴一个转不对的原文例子出来吗
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 03:04:37| 字数 70| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 02:48 发表
你能贴一个转不对的原文例子出来吗


我把说明部分加长了一点, 它根本就不转了.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 03:13:57| 字数 67| - 中国–北京–北京 联通 | 显示全部楼层
脚本写得简单, 没有考虑全部情况, 修改一下就可以了
不转的原因是代码出错了
我再试试看, 如果能简单解决, 我就贴出来,如果麻烦,就明天.如何?
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 03:21:58| 字数 121| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 03:13 发表
脚本写得简单, 没有考虑全部情况, 修改一下就可以了
不转的原因是代码出错了
我再试试看, 如果能简单解决, 我就贴出来,如果麻烦,就明天.如何?


今天已经很晚了, 不必为这个费心了. 谢谢.
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 03:51:25| 字数 101| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
我的也来了!
用法:待处理文件改名为 start.vcf
处理好生成: ready.vcf
如需继续下一个,请移走 ready.vcf 再进行。

下载:http://www.luzhinan.com/vcard.rar
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:06:53| 字数 36| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
处理结果有问题么?还有,大文件分割的情况你的说明一下,我继续实现。呵呵~
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:07:03| 字数 53| - 中国–北京–北京 联通 | 显示全部楼层
你刚才给的zip文件中都是了一个汉字. 我修改了代码, 如果丢失了半个汉字, 丢失位置后面的无法正确转码
你试试看

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:08:50| 字数 273| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 yiylu 于 2006-11-26 03:51 发表
我的也来了!
用法:待处理文件改名为 start.vcf
处理好生成: ready.vcf
如需继续下一个,请移走 ready.vcf 再进行。

下载:http://www.luzhinan.com/vcard.rar


这个更直接一些.

不过, 手机对gbk不感冒啊. (好象gbk本来就是一个半吊子编码?).

而且, 把quoted-printable变成gbk是为了转入Outlook.

现在已经可以完成对quoted-printable转码了. 让我想想应该怎么样最方便. (不需要经过Outlook的转换).
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:10:22| 字数 35| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
gbk 能支持常用的简体和繁体,已经算比较全了,至少比gb2312要全。
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:11:25| 字数 39| - 中国–北京–北京 联通 | 显示全部楼层
你用yiylu兄的代码吧, 我的是html+js,无法进行文件分割处理.
不好意思
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:12:22| 字数 29| - 中国–北京–北京 联通 | 显示全部楼层
感谢你给我了那么多NB,没能完全解决你的问题, 有点不好意思
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:16:12| 字数 35| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
huanggx 你也辛苦了,打算何时入睡啊~~~ 呵呵,现在我倒挺兴奋的。
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:22:52| 字数 86| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 04:12 发表
感谢你给我了那么多NB,没能完全解决你的问题, 有点不好意思


别这么说, 你们二位这么热心, 不好意思的是我啊.
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:25:45| 字数 257| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 yiylu 于 2006-11-26 04:16 发表
huanggx 你也辛苦了,打算何时入睡啊~~~ 呵呵,现在我倒挺兴奋的。



稍等一下, 我正在分析.

手机肯定是认UTF8, 但又要编码.

注释部分更加复杂, 我现在有点想分二步走.

第一步, 搞对前面的那些, 就是名字, 地址等, 这是最重要的.

第二步, 再来看注释部分.

文件分割, 我刚用那个试了, 它没有限制文件的长度, 一路扫下去转下去. 因为分割是针对Outlook的要求而来的. 如果可以不经过Outlook, 就不需要分割了. 当然这样更方便.

稍等, 我弄出一个完整一点的格式来.
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:25:49| 字数 166| - 中国–北京–北京 联通 | 显示全部楼层
QUOTE:
原帖由 yiylu 于 2006-11-26 04:16 发表
huanggx 你也辛苦了,打算何时入睡啊~~~ 呵呵,现在我倒挺兴奋的。



我也是夜猫子, 看到drifter的问题,就来劲了.
因为最近我刚刚因为ajax的编码问题而痛苦, 虽然解决了,但还是对各种浏览器"各行其是"很是愤愤然.

我再看看, 过一会儿就去睡觉了.
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:27:05| 字数 36| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
Drifter再发点 nb 来呀,这样huanggx兄也就不会觉得多了。嘻嘻
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:28:12| 字数 27| - 中国–北京–北京 联通 | 显示全部楼层
你说的注释部分是NOTE后面那些吗?
我的代码可以转吧?
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:30:23| 字数 167| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 04:25 发表



我也是夜猫子, 看到drifter的问题,就来劲了.
因为最近我刚刚因为ajax的编码问题而痛苦, 虽然解决了,但还是对各种浏览器"各行其是"很是愤愤然.

我再看看, 过一会儿就去睡觉了.


javascript 里文字编码转为 unicode 也许能避免不少问题。
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:31:49| 字数 88| - 中国–北京–北京 联通 | 显示全部楼层
这个问题最简单的办法是用WSH脚本处理,但我忘记了WSH的语法,只记得在浏览器中的脚本语法了.
用java很容易做, 但要求你的机器上要有JVM环境.

要有vcard的格式定义就好了
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:32:32| 字数 73| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 yiylu 于 2006-11-26 04:27 发表
Drifter再发点 nb 来呀,这样huanggx兄也就不会觉得多了。嘻嘻


收到了吧?
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:35:13| 字数 56| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
QUOTE:
原帖由 Drifter 于 2006-11-26 04:32 发表


收到了吧?

爱死 nb 了,一会定能睡很香!谢谢了
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:35:36| 字数 200| - 中国–北京–北京 联通 | 显示全部楼层
QUOTE:
原帖由 yiylu 于 2006-11-26 04:30 发表


javascript 里文字编码转为 unicode 也许能避免不少问题。


IE有些自作聪明, 不太遵守规范.
但Opera, FireFox,等等各不相同, 只有UTF-8编码是全部没问题的.
可是, 如果把页面编码全部采用UTF-8, 原来的老页面和老应用需要大量修改,很容易出错.
而且, 涉及到数据库数据时,还需要不断地转码, 只要有一处不注意,就完蛋了.
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:38:42| 字数 48| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
vcard 格式开头初略翻了一下,在分享个方法:
google 里输入:define: vcard 看看。
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:39:56| 字数 704| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 04:31 发表
这个问题最简单的办法是用WSH脚本处理,但我忘记了WSH的语法,只记得在浏览器中的脚本语法了.
用java很容易做, 但要求你的机器上要有JVM环境.

要有vcard的格式定义就好了


是的, 还是要回到根本.

看了下, vCard应该是个文本文件, 本身是以ansi编码的. 里面是以行为单位的. 有个头有个尾很容易认到. 然后一行代表一个字段, 应该是这样吧?

再来说说650的输出的东西. 除了NOTE那个字段, 它都是用windows-1252编码的, 真正的内容不知道用了什么码, 但是在XP上直接可见(那是什么? 我在MAC上打开同一个文件, 不能显示, 说明不是unicode编码?). 但是, Note那个字段, 650还是用了windows-1252编码, 但是转成了quoted-printable.

再来看看非智能手机的情况.

我刚才把这样一个文件直接传给了手机:

BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:Bob=E6=9D=8E=E7=A7=80=E5=86=9B
TEL;WORK:075512345678
TEL;CELL:13902912345
EMAIL;INTERNET;PREF:
EMAIL;INTERNET:
EMAIL;INTERNET:
X-IRMC-LUID:00020000010D
END:VCARD

手机是可以正确认识里面的那些中文的. 说明它需要UTF-8的格式, 但是要经过quoted-printable编码.

先这样吧. 这个vCard是真实的. 不要把上面的中文字贴出来.
回复 支持 反对

使用道具 举报

876

回帖

14

积分

2274

资产值

黄金会员 Rank: 3Rank: 3Rank: 3

注册时间
2006-1-17
发表于 2006-11-26 04:43:29| 字数 210| - 中国–广东–广州 新一代技术(广州)有限公司BGP节点 | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 04:35 发表


IE有些自作聪明, 不太遵守规范.
但Opera, FireFox,等等各不相同, 只有UTF-8编码是全部没问题的.
可是, 如果把页面编码全部采用UTF-8, 原来的老页面和老应用需要大量修改,很容易出错.
而且, 涉及到数据库数 ...


那倒是,如果之前不是utf-8。所以我现在大部分的web-app从前台到数据库都utf-8了,虽然占用字节数多些。
好了,各位晚安!
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:45:27| 字数 324| - 中国–北京–北京 联通 | 显示全部楼层
最近试了试dojo, 在中文环境下是不完备的,除非全部采用UTF-8编码.
dojo有几个很不错的feature, 可以很简单地自动地把form数据和query string都发给服务器(http只有在post方法时才可以).
但是, 在IE中, form中的数据是编码的, query string则不需要编码就可以(当然编码也可以).
对中文的编码, IE采用类似于quoted-printable,只是把=换成了%。
但是Opera和FireFox都是编码为UTF-8。
而dojo则不是。 它要么编码为utf-8,要么就escape(把汉字转为&#nnnnn,nnnnn是数字)。很麻烦
所以我写了js,替代了dojo的转码方法
可是,在Opers和FF下就不行了
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:51:03| 字数 30| - 中国–北京–北京 联通 | 显示全部楼层
Drifter兄, 你究竟是要转码的结果还是要转码的解决方案?
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

9万

回帖

603

积分

21万

资产值

天下无敌I Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

注册时间
2004-6-23
 楼主| 发表于 2006-11-26 04:51:54| 字数 195| - 中国–广东–深圳 天威有线宽带(关内) | 显示全部楼层
QUOTE:
原帖由 huanggx 于 2006-11-26 04:45 发表
最近试了试dojo, 在中文环境下是不完备的,除非全部采用UTF-8编码.
dojo有几个很不错的feature, 可以很简单地自动地把form数据和query string都发给服务器(http只有在post方法时才可以).
但是, 在IE中, form中的 ...


utf-8是好东西, 世界大同啊. 可是, ie就是要别扭, 谁叫它是老大呢?
回复 支持 反对

使用道具 举报

761

回帖

4

积分

721

资产值

初级会员 Rank: 1

注册时间
2003-3-12
铜牌荣誉勋章(注册8年以上会员)
发表于 2006-11-26 04:55:34| 字数 29| - 中国–北京–北京 联通 | 显示全部楼层
我给你一个UNICODE和GBK编码的影射文件,你作参考吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
T60 AZ7 CPU-DUO 2.0G, MEM-2G, HD-100G, DVD 24xCD-RW  Windows Vista Enterprise
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Powered by Discuz! X3.5 © 2001-2023 Comsenz Inc

GMT+8, 2025-2-3 19:51 , Processed in 0.161918 second(s), 55 queries , Gzip On, OPcache On.

手机版|小黑屋|安卓客户端|iOS客户端|Archiver|备用网址1|备用网址2|在线留言|专门网

返回顶部