我用java连接sqlite,路径中有中文,sqlite就连接各种找不到source……
我查说要转换成utf8路径sqlite就能连上,但是我这样写byte[] b = s.getBytes("utf8"); 
                                  s = new String(b);
s路径传进去还是找不到~ 怎么回事啊~ 求助!

解决方案 »

  1.   

    我在linux下试了一下(LANG/LC_ALL zh_CN.UTF-8)
    sqlite-jdbc 
    pure-java 模式 out of memeory
    native 模式 正常。中文windows使用gbk,不知怎么样?
      

  2.   

    我测了中文是支持的哦。
    我的路径是“D:\新建文件夹\”
    文件名是“复件 ccc.db”
    可以连接,查询结果也有。呵呵。你再检查一下,看路径是否有问题?或者说你的路径是在配置文件中读取的?
      

  3.   

    byte[] b = s.getBytes("utf8");将原始的字符串按UTF-8的格式进行解码。String str = new String(s.getBytes(),"utf-8").这个才是按UTF-8的格式进行编码。
    也可以尝试:
    String str = new String(s.getBytes("iso-8859-1"),"utf-8")
      

  4.   

    如果是路径是从配置文件中读取的,那就需要转码了。首先得看你配置文件编码类型,默认为UTF-8;而中文操作系统默认编码类型为GBK;所以你需要将UTF-8转换为GBK。
    byte[] b = s.getBytes("UTF-8");  
    s = new String(b,"GBK");
    或者
    s = new String(s.getBytes("UTF-8"),"GBK");