安卓如何将TXT文件写到特定路径
其实就一个方法,就不贴所有代码了。
/** * 写入文件方法 * @param content */ public static void write(String content) { try { //判断实际是否有SD卡,且应用程序是否有读写SD卡的能力,有则返回true if (Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) { // 获取SD卡的目录 File sdCardDir = Environment.getExternalStorageDirectory(); String path = "/APP/"; File dir = new File(sdCardDir+path); if (!dir.exists()) { dir.mkdirs(); } File targetFile = new File(sdCardDir.getCanonicalPath() + path+"aaa.txt"); //使用RandomAccessFile是在原有的文件基础之上追加内容, //而使用outputstream则是要先清空内容再写入 RandomAccessFile raf = new RandomAccessFile(targetFile, "rw"); //光标移到原始文件最后,再执行写入 raf.seek(targetFile.length()); raf.write(content.getBytes()); raf.close(); } } catch (Exception e) { e.printStackTrace(); } }
package com.example.linfeng.myapplication; import android.os.Environment; import java.io.File; import java.io.RandomAccessFile; import java.text.SimpleDateFormat; import java.util.Date; /** * Created by LinFeng on 2017/11/13. */ public class TextHelper { public static void write(String content, String PathName, String FileName) { try { //判断实际是否有SD卡,且应用程序是否有读写SD卡的能力,有则返回true if (Environment.getExternalStorageState().equals( Environment.MEDIA_MOUNTED)) { // 获取SD卡的目录 File sdCardDir = Environment.getExternalStorageDirectory(); //Log.i("paht",sdCardDir.toString()); String path = "/" + PathName + "/"; //如果不存在,就创建目录 File dir = new File(sdCardDir + path); if (!dir.exists()) { dir.mkdirs(); } File targetFile = new File(sdCardDir.getCanonicalPath() + path + FileName + ".dat"); //使用RandomAccessFile是在原有的文件基础之上追加内容, //而使用outputstream则是要先清空内容再写入 RandomAccessFile raf = new RandomAccessFile(targetFile, "rw"); //光标移到原始文件最后,再执行写入 raf.seek(targetFile.length()); raf.write(content.getBytes()); raf.close(); } } catch (Exception e) { e.printStackTrace(); } } //写头文件,如果不存在写,存在就不写 public static void writeHead(String path,String fileName,char type){ String string=Environment.getExternalStorageDirectory()+"/" + path + "/"+fileName+".dat"; if (!fileIsExists(string)){ switch (type){ case 'I': String content = "Type=Inventory"+"\r\n"+"Date="+getStringDate()+"\r\n"+"ScannerNo=01"; write(content,path,fileName); break; case 'M': write("Type=Market"+"\r\n",path,fileName); break; case 'R': write("Type=Return"+"\r\n",path,fileName); break; } }else{ } } //判断文件是否存在 public static boolean fileIsExists(String strFile) { try { File f = new File(strFile); if (!f.exists()) { return false; } } catch (Exception e) { return false; } return true; } //获取当前时间,格式为:yyyyMMdd HH:mm:ss public static String getStringDate() { Date currentTime = new Date(); SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd HH:mm:ss"); String dateString = formatter.format(currentTime); return dateString; } }
分类:
Android
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2016-10-24 关于win7 下双击不能打开jar 文件