• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

学无止境

学习的记录
  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

对中英文编码问题

(一)服务器端
问题提出:
在网页中打开文件时,如果文件名中含有中文的话,文件打开出错。

解决方案:
给文件名编码。

经历的步骤:
1、Dim fileName As String = Server.UrlEncode(attachementObj.FileName)
   此方法,可以解决全中文名称,全英文名称、中文数字混杂名称、英文数字混杂名称,但是文件名称中英文混杂的文件,运行出错,找不到文件。
2、Dim filename As String = System.Web.HttpUtility.UrlEncode(System.Text.Encoding.UTF8.GetBytes(attachementObj.FileName))
   此方法,可以解决中英文混杂的问题,但是当文件名中有空格时,运行出错,找不到文件
3、Dim filename As String = System.Text.Encoding.UTF8.GetString(System.Text.Encoding.UTF8.GetBytes(attachementObj.FileName))
   此方法,一切OK。基本上所有的文件名称组合我都测试通过:全英文、全中文、中文+数字、英文+数字、中文+英文、中文+空格、英文+空格。

开心,总算是弄出来了。

(二)客户端
在JS中对中文字符串编码,用方法:escape(str)来解决。
此方法,不会对英文和路径中的“/”编码。好用。

posted on 2006-04-14 16:50  littlebamboo  阅读(455)  评论(2)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3