`
liuyfly
  • 浏览: 4578 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

android读SDCard中txt文件中文乱码问题

阅读更多
最近在做一个android小系统,用到了读取SDCard中文本文件(含中文)内容这个功能。刚开始,我就按照一般java读文件的方式写代码,但是,读出来才发现,都是乱码!!!

我就想,是不是读取的方式不对?那换其他的方式试试。然后我就试啊试啊!试了N多方法来读,没想到都是乱码。。。

那我又想,应该是编码转换的问题。我就到网上搜,果然,也碰到了遇到和我一样问题的同胞。

看大部分人的解决方式是:

EncodingUtils.getString(sb.toByteArray(),"GB2312")这种方式。

但是,对我的代码好像没用!!!

EncodingUtils.getString(sb.toByteArray("UTF-8"),"UTF-8")也不行,

EncodingUtils.getString(sb.toByteArray("UTF-8"),"GB2312")还是不行。。。

我不知道为什么好多好多帖子都说这样可行,反正我试了,不行。。。

我那个无奈啊!我那个烦躁啊。。。

后来我又在网上搜,搜着搜着,看到了一个讲txt文件编码方式的帖子。。。我突然有所感悟,会不会是txt文件的编码方式android识别不了,而我们转换的时候又没转对呢?

于是我打开一个txt文档,随便写了点儿中文,没有直接保存,而是"文件" -- > "另存为",然后出现了一个对话框,下面有三行:

第一行:文件名

第二行:保存类型

第三行:编码

然后我看到了.........................默认的编码是ANSI............................神呐!

我选择了UTF-8,保存了,导入模拟器,打开程序读文件,哦了,正常了。。。。。。。。。。。




另外,既然txt文件默认编码方式是ANSI,那么读取的时候是不是可以用ANSI来转换成GB2312或者UTF-8呢?个人认为应该可以,但我没试,有兴趣的可以试试。

再另外, http://blog.csdn.net/handsomedylan/archive/2011/01/14/6138400.aspx  这个别人的帖子也是为了解决这个问题的。不过我也没试,不知道可不可行。
  • 大小: 12 KB
分享到:
评论

相关推荐

    Android读取中文文件乱码解决方法

    ### Android读取中文文件乱码解决方法 #### 一、问题背景 在开发Android应用时,经常需要处理中文字符或包含中文的文件。如果处理不当,可能会遇到中文乱码的问题,尤其是在读取本地文件或者从网络下载文件时更为...

    android在Sdcard中上传中文文件镜像

    然而,在某些旧版本的Android或者非原生Android设备中,可能会遇到中文文件名显示乱码或无法正常读取的问题。这通常与文件系统的编码设置有关,开发者需要确保应用程序正确处理UTF-8编码,以兼容中文文件名。 "镜像...

    android SD卡读写东西Txt文件

    在Android开发中,读写SD卡上的TXT文件是一项常见的需求,...总之,通过合理的权限配置和有效的代码实现,可以在Android应用中轻松地完成对SD卡上TXT文件的读写操作,但同时也需要注意异常处理和性能优化等方面的问题。

    Window下adb shell中文乱码问题解决方法

    Window下,进行adb shell后,举个例子,如果你的sdcard下保存着中文字符文件名的文件,则在CMD下显示是一些无规律的中文并夹杂着乱码。 出现这种情况的原因是: Android中使用的是UTF-8字符,而CMD默认字符集是ANSI...

    android资源管理器源码

    在Android系统中,资源管理器是一个至关重要的组件,它负责管理和加载应用程序以及系统中的各种资源,如图片、字符串、布局文件等。这个压缩包文件"sdcard_man"可能包含了与SD卡管理相关的源代码,这将涉及到Android...

    adb工具最新1.0.32版本

    在早期的adb版本中,由于编码和字符集的问题,当尝试推送含有非ASCII字符(如中文)的文件时,可能会出现错误或乱码。这一限制给开发者带来了诸多不便,尤其是在处理本地化资源或中文命名的文件时。现在,adb 1.0.32...

    Android 读写文件方法汇总

    在Android应用中,从外部存储如sdcard读取文件数据,需要确保应用具有读取外部存储的权限。使用`FileInputStream`来读取sdcard中的文件,示例如下: ```java FileInputStream fin = new FileInputStream("/sdcard/Y...

    android使用html和js显示界面

    以下是从给定文件信息中提取的关键知识点,深入解析了如何在Android环境下通过WebView组件正确加载并执行HTML与JS代码,确保中文字符的正常显示以及解决JS不生效的问题。 #### WebView组件的配置与使用 - **...

    数据库建立在sdcard的个人日记

    由于Linux系统和Android系统对文件编码处理可能有所不同,如果代码中的注释出现乱码问题,用户可以通过留言向作者反馈。这暗示了代码可能是跨平台的,可能包含用于在Linux环境下操作SQLite数据库的代码片段。 标签...

    微信导出聊天记录_android系统.pdf

    4. .idx 一般是字幕的时间轴文件,不管他,直接拷出来,把后缀改成 .txt,肯定是乱码。 5. 不要紧,直接用 IE 打开,然后编码选 Unicode,文本就变成可识别的简体了,再另存文件,保存成 txt,ok,可以阅读啦! ...

    微信导出聊天记录_android系统分享.pdf

    4. .idx 一般是字幕的时间轴文件,不管他,直接拷出来,把后缀改成 .txt,肯定是乱码。 5. 不要紧,直接用 IE 打开,然后编码选 unicode,文本就变成可识别的简体了,再另存文件,保存成 txt,ok,可以阅读啦! ...

    android课程体系

    - 编码表:字符编码与乱码问题解决。 - **Java实用技术**: - 多线程:线程创建、同步机制、线程间通信。 - 网络编程:IP地址、端口号、协议等基础知识。 - Socket编程:UDP与TCP协议实现。 - 反射:Class对象...

    Android 启动第三方程序的方法总结

    Uri uri = Uri.fromFile(new File("/sdcard/demo.txt")); intent.setDataAndType(uri, "text/plain"); startActivity(intent); ``` 这段代码将打开位于SD卡上的"demo.txt"文件,并使用HTMLViewer进行显示。 总的来...

    手机卡内外置卡互换

    上述内容虽然存在乱码,但可以推断其涉及的技术操作是通过修改Android系统的`vold.fstab`文件来实现内外置卡互换的。`vold.fstab`文件是Android系统中用于定义存储设备挂载点的重要配置文件,通过修改它,可以改变...

Global site tag (gtag.js) - Google Analytics