在安卓设备上,把文件读出成String,在写回去,文件打开异常
2022/2/22 23:46:25
本文主要是介绍在安卓设备上,把文件读出成String,在写回去,文件打开异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在安卓设备上,把文件读出成String,在写回去,文件大小不对了,打开显示乱码了。指定一下编码格式就解决了。代码如下:
private static final String destPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath(); private static final String srcPath = destPath+File.separator+"bg_device_detail_nvr.jpg"; public static final String receivePath = destPath+File.separator+"nvr.jpg"; private void testFile(){ getPermission(); BufferedInputStream bis = null; ByteArrayOutputStream baos = null; BufferedOutputStream bos = null; ByteArrayInputStream bais = null; try { if (!new File(srcPath).exists()){ Toast.makeText(this,"文件不存在!",Toast.LENGTH_SHORT).show(); return; } bis = new BufferedInputStream(new FileInputStream(srcPath)); baos = new ByteArrayOutputStream(); bos = new BufferedOutputStream(new FileOutputStream(receivePath)); byte[] buffer = new byte[1024]; int len = -1; while ((len = bis.read(buffer))!=-1){ baos.write(buffer, 0, len); } byte[] bb= baos.toByteArray(); String temp = new String(bb, StandardCharsets.ISO_8859_1); //指定编码后就解决乱码问题了 byte[] result = temp.getBytes(StandardCharsets.ISO_8859_1); bos.write(result, 0, result.length); Toast.makeText(this,"完成", Toast.LENGTH_SHORT).show(); } catch (Exception e) { e.printStackTrace(); }finally { try { if (null != baos) { baos.close(); } } catch (IOException e) { e.printStackTrace(); } try { if (null != bis) { bis.close(); } } catch (IOException e) { e.printStackTrace(); } try { if (null != bais){ bais.close(); } } catch (IOException e) { e.printStackTrace(); } if (null != bos){ try { bos.close(); } catch (IOException e) { e.printStackTrace(); } } } }
记录一下
这篇关于在安卓设备上,把文件读出成String,在写回去,文件打开异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25JAVA语音识别项目项目实战入门教程
- 2024-11-25JAVA云原生项目实战入门教程
- 2024-11-25Java语音识别项目入门:新手必读指南
- 2024-11-25Java语音识别项目入门:轻松开始你的第一个语音识别项目
- 2024-11-25Java语音识别项目入门详解
- 2024-11-25Java语音识别项目教程:从零开始的详细指南
- 2024-11-25JAVA语音识别项目教程:初学者指南
- 2024-11-25Java语音识别项目教程:初学者指南
- 2024-11-25JAVA云原生入门:新手指南与基础教程
- 2024-11-25Java云原生入门:从零开始的全面指南