您的位置:首页 > 其它

文件复制、对象可序列化存储

2016-09-06 14:16 218 查看

eclipse中文件复制

public class CopyPaste {

public static void main(String[] args) throws IOException {
// 也可以直接写score.txt,都表示当前目录
InputStream is = new FileInputStream(new File("./score.txt"));

OutputStream os = new FileOutputStream(new File("./score2.txt"));
byte[] buffer = new byte[1024];
int length;

while ((length = is.read(buffer)) > 0)
{
os.write(buffer,0,length);
}
os.flush();
os.close();
is.close();
System.out.println("copy success");
}

}


Android studio中assets下文件复制到sd卡

/**
* 图片保存到本地
*/
private void copyToPhone() {
String IMG_PATH= Environment.getExternalStorageDirectory().getPath();
Log.i("IMG_PATH",IMG_PATH);
String IMG_NAME="qrcode_me.jpg";
if ((new File(IMG_PATH,IMG_NAME).exists()) == false)
{
File dir = new File(IMG_PATH);
if (!dir.exists())
{
dir.mkdir();
}
try {
InputStream is = null;
try {
is = getAssets().open(IMG_NAME);
} catch (IOException e) {
e.printStackTrace();
}
OutputStream os = new FileOutputStream(IMG_PATH +"/"+ IMG_NAME);
byte[] buffer = new byte[2014];
int length;

while ((length = is.read(buffer)) > 0)
{
os.write(buffer,0,length);
}
os.flush();
os.close();
is.close();

toast.ShowText("保存成功", CopyrightActivity.this);
} catch (IOException e) {
e.printStackTrace();
toast.ShowText("保存失败", CopyrightActivity.this);
}

}
else

toast.ShowText("图片已经存在 ",CopyrightActivity.this);
}


两者实现过程几乎一样,就是获取输出流不一样

对象可序列化存储

public static void writeObjectToFile() throws FileNotFoundException, IOException{
Employee emp=new Employee(1,"yuzhyun",5000);
ObjectOutputStream out=new ObjectOutputStream(
new FileOutputStream("emp.temp"));
out.writeObject(emp);
out.close();
System.out.print("成功");

}


注意:类Employee必须 implements Serializable
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐