jwx0925
jwx0925
2010-03-19 16:00

上传中文名图片,怎样通过hash转换成数字或英文名?

已采纳

加入我们上传了一个图片
把文件名和路径存到数据库中
但是,但浏览器读取该图片时不能显示
我想通过一种技术,把真实的名字保存到数据库中
把生成的改后的路径名也存到数据库,通过数据库来对应
因为经常看到下载的图片名是杂乱无章的数字或字母
谁能告诉我怎么做?

举个例子:
上传 你好.jpg
存到数据库里是
name: 你好
url:..../123124124123123.jpg

怎样实现呢?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

8条回答

  • wanghaolovezlq wanghaolovezlq 11年前

    你可以使用最简单的方式,以uuid来生成文件名,uuid可以保证生成的字符串id唯一

    java.util.UUID

    点赞 评论 复制链接分享
  • xiaolongfeixiang 拽拽的初行者 11年前

    [code="java"]System.out.println(Long.toHexString(System.currentTimeMillis()));[/code]

    [color=blue][b]看是不是你希望的?[/b][/color]

    点赞 评论 复制链接分享
  • iteye_13500 iteye_13500 11年前

    你想达到一种什么效果呢?

    点赞 评论 复制链接分享
  • xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx 11年前

    [quote]但是,但浏览器读取该图片时不能显示 [/quote]
    不明白是什么意思? 是上传后不能马上预览?

    点赞 评论 复制链接分享
  • xxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxx 11年前

    hash method可以是: java.util. UUID.randomUUID().toString();

    点赞 评论 复制链接分享
  • qwe_rt qwe_rt 11年前
              [code="java"] String   dtr="你好.jsp";   
                  String   y[]=dtr.split("\\.");   
                  dtr=y[0]+(new Date()).toString()+"."+y[1];  [/code] 
    
    点赞 评论 复制链接分享
  • fjilyfe fjilyfe 11年前

    首先我没明白你的意思,其次如何图片上传并存储的话,应该存储的是二进制,那么在显示图片的时候名字是你自己指定的,你指定了什么就是什么。

    点赞 评论 复制链接分享
  • qwe_rt qwe_rt 11年前

    常规的,把图片的名字换成当前时间的字符串。
    比如 你好.jpg
    换成 201003191609.jpg,

    点赞 评论 复制链接分享

相关推荐