常用Tools类

//文件读写

复制代码
//在导入项目中的数据库中把数据从中去出来
调用例:readSql(a,"comminnum.db",f);
public void readSql(Context context,String path,File tofile){ BufferedInputStream bis=null; BufferedOutputStream bos=null; int len=0;
byte []bt=new byte[1024]; try { bis=new BufferedInputStream(context.getAssets().open(path));//实例化输入流path为数据库路径,一般写数据库名就行,open是InputStream类型的
bos
=new BufferedOutputStream(new FileOutputStream(tofile)); //实例化输出流 while ((len=bis.read(bt))!=-1){ bos.write(bt,0,len); } } catch (IOException e) { e.printStackTrace(); }finally { if(bis!=null){ try { bis.close(); } catch (IOException e) { e.printStackTrace(); } } if(bos!=null){ try { bos.close(); } catch (IOException e) { e.printStackTrace(); } } } }
复制代码

//文件创建

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
File file=null;
    public void createFile(Context context){//判断是否存在sd卡,有返回true
        if(Environment.getExternalStorageDirectory().equals(Environment.MEDIA_MOUNTED)){//有sd卡
            file=new File("data"+File.separator+"data"+File.separator+Environment.getExternalStorageDirectory()+File.separator+"stusystem.db");
            if(!file.getParentFile().exists()){
                file.getParentFile().mkdirs();
            }
            if(!file.exists()){
                try {
                    file.createNewFile();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }else{//没有SD卡
            file=new File("data"+ File.separator+"data"+File.separator+context.getPackageName()+File.separator+"stusystem.db");
            if(!file.getParentFile().exists()){
                file.getParentFile().mkdirs();
            }
            if(!file.exists()){
                try {
                    file.createNewFile();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

  

 

posted on   huaihuaibuguai  阅读(172)  评论(0编辑  收藏  举报

编辑推荐:
· 智能桌面机器人:用.NET IoT库控制舵机并多方法播放表情
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
阅读排行:
· 新年开篇:在本地部署DeepSeek大模型实现联网增强的AI应用
· DeepSeek火爆全网,官网宕机?本地部署一个随便玩「LLM探索」
· Janus Pro:DeepSeek 开源革新,多模态 AI 的未来
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(三):用.NET IoT库
· 上周热点回顾(1.20-1.26)

导航

< 2025年1月 >
29 30 31 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31 1
2 3 4 5 6 7 8

统计

点击右上角即可分享
微信分享提示