码迷,mamicode.com
首页 > 编程语言 > 详细

java网络编程中拿到源后的写入动作

时间:2016-06-28 20:36:36      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

  在网络编程中的TCP传输里,拿到Socket的源后,应该怎么进行读写操作呢,下面我列举了两种方法,希望大家帮忙补充····

1.利用byte数组作为一个缓冲区进行读写

 1 //获取socket流,将图片上传给服务端
 2         FileInputStream fis=new FileInputStream("c:\\12.jpg");
 3         
 4         //获取了输出流
 5         OutputStream out=s.getOutputStream();
 6         
 7         //用数组作为缓冲
 8         byte[]buf=new byte[1024];
 9         
10         //len用来记录长度
11         int len=0;
12         
13         //循环读写
14         while((len=fis.read(buf))!=-1){
15             //当返回-1时表示读完毕,此时len为总长度
16             out.write(buf,0,len);
17         }
 1 InputStream in=s.getInputStream();
 2 File dir=new File("c:\\pic");
 3         if(!dir.exists()){
 4             dir.mkdirs();
 5         }
 6 FileOutputStream fos=new FileOutputStream("server.jpg");
 7 byte[] buf=new byte[1024];
 8         int len=0;
 9         while((len=in.read())!=-1){
10             fos.write(buf,0,len);
11         }
12         

 

2.使用缓冲区作为缓冲

 1         //使用流输出数据
       BufferedReader bufr=new BufferedReader(new FileReader("client.txt")); 2 3 //通过使用PrintWriter对字节流和字符流进行处理,接管流 4 PrintWriter out =new PrintWriter(s.getOutputStream(),true); 5 6 //开始读取,上传给服务端 7 String line=null; 8 while((line=bufr.readLine())!=null){ 9 out.println(line); 10 }
 1     //将接收的数据放入流中
 2         BufferedReader bufIn=
 3                 new BufferedReader(new InputStreamReader(s.getInputStream()));
 4         
 5         //指定要写入得文件
 6         BufferedWriter bufw=new BufferedWriter(new FileWriter("server.txt"));
 7         
 8         //开始读取
 9         //缓冲区的默认大小为8k,一到8k则会自动刷新,若没有结束标志,则得到的文件大小一定是8的倍数
10         String line=null;
11         while((line=bufIn.readLine())!=null){
12             if("over".equals(line))
13                 break;
14             bufw.write(line);
15             bufw.newLine();
16             //自己写刷新
17             bufw.flush();
18         }
19         

 

java网络编程中拿到源后的写入动作

标签:

原文地址:http://www.cnblogs.com/Liang-Blog/p/5624859.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!