TC官方合作论坛

 找回密码
 立即注册
查看: 5587|回复: 16

[已解决] \xe4\xba\xa7\xe5\x93\x81\xe5\x9b\xbe\xe7\x89\x87怎么转换成原来的中文

[复制链接]
发表于 2018-12-28 06:26:57 | 显示全部楼层 |阅读模式

马上加入TC

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

x
\xe4\xba\xa7\xe5\x93\x81\xe5\x9b\xbe\xe7\x89\x87
回复

使用道具 举报

发表于 2018-12-28 13:42:38 | 显示全部楼层
在计算机中,每个汉字,都有个十六进制_unicode编码.
用字符串格式化(), 把参数2的unicode, 转换成参数1格式的中文字符串.
var ret = 字符串格式化("%c", unicode)
traceprint(ret)
回复 支持 反对

使用道具 举报

发表于 2018-12-28 13:48:27 | 显示全部楼层
var ret = 字符串格式化("%c", #e4)  //C语言的0x,在TC中用#表示.
traceprint(ret)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 14:03:09 | 显示全部楼层
剑仙十号 发表于 2018-12-28 13:48
var ret = 字符串格式化("%c", #e4)  //C语言的0x,在TC中用#表示.
traceprint(ret)

辛苦了+多谢!
但是您以上代码,似乎没有完全解答我的问题。。。

我贴出的这串字符 解出来应该是“产品图片”,也就是\xe4\xba\xa7对应 产,,,类推,望大侠进一步解惑!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 14:06:36 | 显示全部楼层
剑仙十号 发表于 2018-12-28 13:48
var ret = 字符串格式化("%c", #e4)  //C语言的0x,在TC中用#表示.
traceprint(ret)

据我理解  他不是单个转换的  是3个一组,,,,解惑后定采纳!
回复 支持 反对

使用道具 举报

发表于 2018-12-28 17:27:22 | 显示全部楼层
采纳率 毫无意义。
你需要用正则表达式,把三个一组 匹配出来。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 18:36:47 | 显示全部楼层
剑仙十号 发表于 2018-12-28 17:27
采纳率 毫无意义。
你需要用正则表达式,把三个一组 匹配出来。

正则倒是会一点 关键是匹配出来后怎么组合或是计算。。。?

望赐教!
回复 支持 反对

使用道具 举报

发表于 2018-12-28 19:42:25 | 显示全部楼层
本帖最后由 剑仙十号 于 2018-12-28 19:52 编辑

我思考一下,不使用正则,也可行的。
代码未测试。
var str0 = "\xe4\xba\xa7\xe5\x93\x81\xe5\x9b\xbe\xe7\x89\x87"
var str = "", aj = 0, arr
var len = 字符串分割(str0,"\x",arr)

for(var ai=0; ai<len; ai++)
str = str & arr[ai]
aj = aj + 1
if(aj==2)
traceprint(字符串格式化("%c", 转整型(str)))
str = ""
aj = 0
end
end
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-28 20:43:17 | 显示全部楼层
剑仙十号 发表于 2018-12-28 19:42
我思考一下,不使用正则,也可行的。
代码未测试。
var str0 = "\xe4\xba\xa7\xe5\x93\x81\xe5\x9b\xbe\xe7 ...

不行
QQ图片20181228203006.png
回复 支持 反对

使用道具 举报

发表于 2018-12-28 22:08:15 | 显示全部楼层
var str0 = "\\xe4\\xba\\xa7\\xe5\\x93\\x81\\xe5\\x9b\\xbe\\xe7\\x89\\x87"
str0 = 字符串修剪(str0, "\\x")
var str = "", aj = 0, arr
var len = 字符串分割(str0, "\\x", arr)

for(var ai = 0; ai < len; ai++)
  str = str & arr[ai]
  aj = aj + 1
  if(aj == 3)
   str = "#" & str
   traceprint(str)
   traceprint(字符串格式化("%c", 转整型(str, 1)))
   str = ""
   aj = 0
  end
end
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-3-29 05:35 , Processed in 0.051309 second(s), 26 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表