文件上传到linux服务器 文件名为乱码

disablebb 2011-11-23 04:43:32
我在windows系统 用fileupload上传包含中文文件名的文件,
上传到linux服务器后文件名为乱码。

我用乱码字符串做 GBK转UTF-8可以变为正常
原本想在上传后先用程序重命名一遍UTF-8转GBK的文件名,但是出现了另外一种乱码。

请教知道这个问题的解决方法或原因,谢谢。


另外我用程序创建一个文件也会出现这种乱码。

Linux 系统的编码是utf-8的
java代码文件的编码格式是utf-8的
...全文
1700 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
jcback 2011-11-25
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 disablebb 的回复:]
从SecureFX拖上去显示的中文 在SecureCRT看不到 中文
[/Quote]
SecureCRT在会话选项里设置编码格式
向良玉 2011-11-25
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 disablebb 的回复:]

从SecureFX拖上去显示的中文 在SecureCRT看不到 中文
[/Quote]
会话选项可以选择utf8格式
askandstudy 2011-11-25
  • 打赏
  • 举报
回复
在java程序里的编码解码就不太清楚了,我不会java
jcback 2011-11-24
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 disablebb 的回复:]
我看到的结果在ftp里 用GBK转utf-8就是 正确的了 但是我之前在程序里尝试先utf-8转GBK得不到的是另一种乱码
[/Quote]
你的程序里为什么要从utf—8转GBK呢,服务器做什么转码,它只认是什么码
qq120848369 2011-11-24
  • 打赏
  • 举报
回复
很明显网络传输要用UTF-8或者GBK,用UNICODE涉及大小端问题,完全是悲剧.
reality 2011-11-24
  • 打赏
  • 举报
回复
一般我都是unicode转gbk

不同的linux 之间 默认的编码也不一样 要根据实际情况测试
askandstudy 2011-11-24
  • 打赏
  • 举报
回复
ssh终端软件的会话设置里encoding试试换成default、gbk等看看能不能显示
这有篇较简单一点的文章,你看看然后试验一下
http://blog.microsuncn.com/?p=3348

msn、qq之类的我已经很久没有使用了,不想用这些东东,skype还勉强可以,但是也很久没用了。
disablebb 2011-11-24
  • 打赏
  • 举报
回复

dql??ѯ????.txt 为我ftp托上去,虽然显示的是乱码 但是是我想要的结果
sql查询语句.txt 为我程序添加的文件名,虽然显示正确,但其实不对

如下是我转吗的语句和结果
iconv -f utf-8 -t gbk sql查询语句.txt
sqliconv: illegal input sequence at position 3 这时出现了问题(可能说明我写到服务器的文件转码的时候出错了)
iconv -f gbk -t utf-8 sql查询语句.txt
sql查询语句.txt

请问在程序里我该如何转码
disablebb 2011-11-23
  • 打赏
  • 举报
回复
刚才用LANG=zh_CN.UTF-8或者LANG=zh_CN.GBK试了 没有用 请问服务器编码方式是这么改吗
我看到的结果在ftp里 用GBK转utf-8就是 正确的了 但是我之前在程序里尝试先utf-8转GBK得不到的是另一种乱码

试了很多种转码方式了,我觉得可能是服务器进行了转码,但是不知道怎么做的。在哪设置能调整,求教了
disablebb 2011-11-23
  • 打赏
  • 举报
回复
有msn能加一个吗 nkc_20077@hotmail.com
disablebb 2011-11-23
  • 打赏
  • 举报
回复
这个方法 修改的是编码方式吗?
askandstudy 2011-11-23
  • 打赏
  • 举报
回复
ssh终端里执行:LANG=zh_CN.UTF-8或者LANG=zh_CN.GBK等试试看
disablebb 2011-11-23
  • 打赏
  • 举报
回复
从SecureFX拖上去显示的中文 在SecureCRT看不到 中文
disablebb 2011-11-23
  • 打赏
  • 举报
回复
tomcat@Staging ~/logs $ echo $LANG
en_US.utf8

qq120848369 2011-11-23
  • 打赏
  • 举报
回复
/home/owenliang/csdn/src main.cpp 6,10-13 全部 __Tag_List__ 5,5 全部
"main.cpp" 7L, 66C 已写入

[1]+ Stopped vim main.cpp
owenliang@linux-7lsl:~/csdn/src> ls
1.cpp 2.cppr client.cpp file.sh main.cpp net.h post.txt store.txt testmakefile
1.exe 2.txt core func.cpp makefile network_top.sh sendfile.txt tags tinyhttpd-0.1.0
2.cc 4yuan doc func.h nerdtree_plugin nginx-1.1.7.tar.gz server tempFopLV9 tinyhttpd-0.1.0.tar.gz
2.cpp client fifoserver main NERD_tree.zip plugin server.cpp test tmp.cpp
owenliang@linux-7lsl:~/csdn/src>
askandstudy 2011-11-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 disablebb 的回复:]
ssh工具的编码已经是utf8了。
[/Quote]

[root@RHEL6A ~]# touch 测试.txt
[root@RHEL6A ~]# ls
anaconda-ks.cfg install.log RHEL6A software test2 公共的 视频 文档 音乐
html.pdf install.log.syslog scripts test 测试.txt 模板 图片 下载 桌面

那这样一下能看见中文吗?
disablebb 2011-11-23
  • 打赏
  • 举报
回复
ssh工具的编码已经是utf8了。
askandstudy 2011-11-23
  • 打赏
  • 举报
回复
去下载个xmanager3就同时有ssh工具和传文件的工具了
askandstudy 2011-11-23
  • 打赏
  • 举报
回复
[root@RHEL6A ~]# more /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
[root@RHEL6A ~]# echo $LANG
zh_CN.UTF-8

[root@RHEL6A ~]# ls
anaconda-ks.cfg install.log RHEL6A software test2 模板 图片 下载 桌面
html.pdf install.log.syslog scripts test 公共的 视频 文档 音乐

你的ssh工具和传文件的工具都把编码设置成utf8的试试看

disablebb 2011-11-23
  • 打赏
  • 举报
回复
我用的是SecureFX 我下载到本地的windows里也是乱码
加载更多回复(1)

23,116

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧