android字节流保存,安卓-代码--保存文件、输入输出流、socket通信

一、本例是保存bitmap图片(bmp格式)

String SAVE_PIC_PATH = Environment.getExternalStorageDirectory().getPath() + "/selfassistterminal/saveidimage";

File f = new File(SAVE_PIC_PATH);

if (!f.exists()) { //好像不可少

f.mkdirs();

}

File myCaptureFile = new File(SAVE_PIC_PATH, FileName); //好像不可少,因为createNewFile()方法中没有生成文件夹

if (!myCaptureFile.exists()) {

myCaptureFile.createNewFile();

}

Log.i("test save path and name", SAVE_PIC_PATH + "/" + FileName);

/*

*这里是将图片写入输出流

*/

BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(myCaptureFile));

bitmap.compress(Bitmap.CompressFormat.JPEG, 80, bos);

bos.flush();

bos.close();

/*

*这里读取bmp图片

*/

public Bitmap readBitmap(String persononename) {

String SAVE_PIC_PATH = Environment.getExternalStorageDirectory()

.getPath() + "/selfassistterminal/saveidimage";

;

Bitmap bm = BitmapFactory.decodeFile(SAVE_PIC_PATH + "/"

+ persononename + ".bmp");

return bm;

}

---------------------------------------------------------

二、另外输出流、输入流相关说明、举例

(应该还要查java中的字节流、字符流的用法区别)

从输入流中读取字符串

URL url = new URL("http://www.baidu.com");

HttpURLConnection connection = null;

connection = (HttpURLConnection) url.openConnection();

connection.setRequestMethod("GET");

connection.setReadTimeout(8000);

connection.setConnectTimeout(8000);

InputStream in = connection.getInputStream();

InputStreamReader is = new InputStreamReader(in);

BufferedReader reader = new BufferedReader(is);

StringBuilder builder = new StringBuilder();

String line ;

while((line = reader.readLine())!= null){

builder.append(line);

//BufferedReader 不可追加,

//而StringBuilder 可以追加

}

String result = builder.toString();

向输入流中写入字符串

connection.setRequestMethod("POST");

OutputStream os = connection.getOutputStream();

DataOutputStream out = new DataOutputStream(os);

out.writeBytes("username=admin&password=123456");

//不确定是否要关闭,可能需要flush();

//

---------------------------------------------------------

三、从socket中发送数据,读取数据

1.写入数据

Socket socket = new Socket("192.169.1.222",8080);

OutputStream os = socket.getOutputStream();

OutputStreamWriter osw = new OutputStreamWriter(os);

BufferedWriter bw = new BufferedWriter(osw);

bw.write("hello world\r\n\r\n");

bw.flush();

os.close();

2.读取数据

InputStream is = socket.getInputStream();

InputStreamReader isr = new InputStreamReader(is);

BufferedReader br = new BufferedReader(isr);

//BufferedReader 不可追加,

//而StringBuilder 可以追加

String s = "";

while ((s = br.readLine()) != null) {

Log.i("s", s);

}

is.close();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值