移动云

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 3919|回复: 0

关于Java里文件拷贝

[复制链接]
发表于 2012-4-11 13:36:02 | 显示全部楼层 |阅读模式
之前做文件拷贝很多时候都是InputStream读了然后OutputStream去写,偶尔发现FileChannel这个类,发现用它去做看上去像个样子。。。
下面是个代码片段
                     FileChannel fis = null;
                FileChannel fos = null;
                try {
                        fis = new FileInputStream(file).getChannel();
                        fos = new FileOutputStream(new File(SAVED_PATH + SAVED_DATA)).getChannel();
                        long result = fis.transferTo(0, fis.size(), fos);
                        if (result == fis.size()) {
                            Toast.makeText(ctx, ctx.getString(R.string.msg_export_success) + SAVED_PATH + SAVED_DATA,
                                        Toast.LENGTH_LONG).show();
                        } else {
                                Toast.makeText(ctx, R.string.error_dataformat, Toast.LENGTH_LONG)
                            .show();
                        }
                } catch (Exception e) {
                        e.printStackTrace();
                } finally {
                        try {
                                fis.close();
                        } catch (IOException e) {
                                e.printStackTrace();
                        }
                        try {
                                fos.close();
                        } catch (IOException e) {
                                e.printStackTrace();
                        }
                }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|管理员QQ:44994224|邮箱(t268studio@gmail.com)|Archiver|MCLOUDER

GMT+8, 2025-7-2 05:42 , Processed in 0.038651 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表