文件IO



final String FILE_PATH="/data/data/com.android.hymake.ecard/";
final String FILE_NAME="CARD.XML";
final String TEXT_ENCODING = "UTF-8";

File file;
FileOutputStream out;
FileInputStream in;
String display;

//生成保存本机名片的XML文件并显示内容
private void generateLocalECardXml(){
try {
String infoToWriter = getLocalECardInfo();
out = this.openFileOutput(FILE_NAME, MODE_PRIVATE);
out.write(infoToWriter.getBytes());
Log.i(TAG, "filewrite:"+infoToWriter);
out.close();
Log.i(TAG, "create local ecard xml file successfully!");

in = this.openFileInput(FILE_NAME);
byte[] temp = new byte[1024];
int length = in.read(temp);

display = EncodingUtils.getString(temp, TEXT_ENCODING);
Log.i(TAG, "fileread:"+display);
in.close();
Toast.makeText(Ecard.this, display, Toast.LENGTH_LONG).show();
} catch (Exception e) {
// TODO Auto-generated catch block
Log.e(TAG, e.getMessage());
}
}

//读取本机名片并生成XML形式的实符串
private String getLocalECardInfo() throws Exception{
StringBuffer xmlStr;
//获取名片表中第一条记录
mCardsCursor = mDbHelper.get(1, CardsDbAdapter.DATABASE_TB_CARDS);
if (mCardsCursor==null){
setListAdapter(null);
Log.e(TAG,"本机名片不在!");
throw new Exception("本机名片不在!");
}
xmlStr = new StringBuffer("<?xml version=\"1.0\" encoding=\"utf-8\"?><cardinfo>");
xmlStr.append("<username>").append(getNotNullStr(mCardsCursor.getString(1)))
.append("</username");
xmlStr.append("<phonenumber>").append(getNotNullStr(mCardsCursor.getString(3)))
.append("</phonenumber>");
xmlStr.append("<useraddress>").append(getNotNullStr(mCardsCursor.getString(4)))
.append("</useraddress>");
xmlStr.append("<usernote>").append(getNotNullStr(mCardsCursor.getString(5)))
.append("</usernote>");
xmlStr.append("</cardinfo>");
return xmlStr.toString();
}

public static String getNotNullStr(String str){
return null==str?"":str;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值