`
dkn28dkn
  • 浏览: 17299 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

图片传输问题,IO操作

 
阅读更多

图片传输问题,IO操作
2011年08月01日
  原题:
  将本地图片文件,转成字节码流后,然后再 转成对象 用于 网络传输
  几个得分的回复:
  (1) javax.imageio.*; 里面的方法也许有用: BufferedImage bImage = new BufferedImage(image.getWidth(), image .getHeight(), BufferedImage.TYPE_INT_ARGB); ByteArrayOutputStream out = new ByteArrayOutputStream(); try { ImageIO.write(bImage, format, out); } catch (IOException e) { e.printStackTrace(); } byte [] b = out.toByteArray(); b传过去,再转成图像,用FileOutpurStream 就好啦 FileOutputStream fos = new FileOutputStream(file); for (int i = 0; i 0){ bao.write(buff); } bao.close(); bis.close(); buff=bao.toByteArray();//将图片文件转换为字节数组//buff数组存储的是图片1.JPG的字节码 ByteArrayInputStream asis=new ByteArrayInputStream(buff); BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("d:/2.jpg")); byte[] temp=newbyte[1]; while((asis.read(temp))>0){ bos.write(temp); } asis.close(); bos.flush(); bos.close(); }catch(Exception e){ e.printStackTrace(); } } } 
  (5) 楼主给出的代码: 问题应该是解决了,我的文件比较小,我准备用字节数组传输 写了代码,大家看看; 最后利用现有的传对象的方法 将字节数组传输到服务端 存为文件 public class TestFile { /** *@param args *@throws IOException*/ public static void main(String[] args)throws IOException{ // int byteread = 0; // File file = new File("2.GIF"); // InputStream is = new FileInputStream(file); // byte[] buffer = new byte[1024]; // while ((byteread = is.read(buffer)) != -1) {//一次读1444个字节放入buffer数组中 // System.out.println(is.read(buffer)); // } File file=new File("2.GIF");byte[] b= getBytesFromFile(file); getFileFromBytes(b,"22.jpg"); } public static byte[] getBytesFromFile(File file){ byte[] ret=null; try{ if (file==null){ // log.error("helper:the file is null!"); return null; } FileInputStream in=new FileInputStream(file); ByteArrayOutputStream out=new ByteArrayOutputStream(4096); byte[] b=newbyte[4096]; int n; while ((n= in.read(b))!=-1){ out.write(b,0, n); } in.close(); out.close(); ret= out.toByteArray(); }catch (IOException e){ // log.error("helper:get bytes from file process error!"); e.printStackTrace(); } return ret; } public static File getFileFromBytes(byte[] b, String outputFile){ File ret=null; BufferedOutputStream stream=null; try{ ret=new File(outputFile); FileOutputStream fstream=new FileOutputStream(ret); stream=new BufferedOutputStream(fstream); stream.write(b); }catch (Exception e){ // log.error("helper:get file from byte process error!"); e.printStackTrace(); }finally{ if (stream!=null){ try{ stream.close(); }catch (IOException e){ // log.error("helper:get file from byte process error!"); e.printStackTrace(); } } } return ret; } } 
  
  
分享到:
评论

相关推荐

    Java之IO流学习总结

    即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。 IO流的分类 根据处理数据类型的不同分为:字符流和字节流 根据数据流向不同分为:输入流和...

    JAVA基础知识点,J2SE部分内容

    字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以(使用用字节流来传输字符文件会产生乱码) 注意,不管是哪一种流,在数据传输的底层,还是以字节方式传输。

    基于文件和目录的文档、网址导航、图书、图片、视频网站PHP开源系统。.zip

    Filesite.io源码, 一个无数据库、基于文件和目录的Markdown文档、网址导航、图书、图片、视频网站PHP开源系统。 软件开发设计:应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等...

    Java流总结

    称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。 IO流的分类 • 根据处理数据类型的不同分为:字符流和字节流 • 根据数据流向不同分为:输入流和输出流 字符流和字节流...

    Java BIO、NIO、AIO、Netty知识详解(值得珍藏)

    在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上 的数据传输流,字符串流,对象流等等等。 比如程序从服务器上下载图片,就是通过流的方式从网络上以流的方式到...

    基于Android的天气APP毕业设计项目

    蓝牙串口传输温度 开源框架 Butterknife注解式框架 http://jakewharton.github.io/butterknife/ Glide图片加载框架 https://github.com/bumptech/glide Okhttp网络请求框架 http://square.github.io/okhttp/ ...

    feem_for_windows_desktop_4_3_0.zip

    支持局域网内iPhone、安卓手机、Windows、Mac、iPad 等多种不同操作系统的设备之间传输文件、图片、视频、交换文档和文字内容。此版本为windows8以下的PC客户端,其他操作系统的版本可到官网下载:www.feem.io

    java源码包---java 源码 大量 实例

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 mysql版本_spring3.0

    17.新增Lucene全文检索 18.Base64传输图片 19.图片加水印(图片水印,文字水印) 20.生成 or 解析 二维码 21.HTML5 + JAVAEE WebSocket 通信技术 22.批量异步上传图片,可预览,有进度条,支持拖拽上传(百度...

    J2EE spring mvc mybatis bootstrap HTML5 后台框架 控制台 oracle版本_spring3.0

    17.新增Lucene全文检索 18.Base64传输图片 19.图片加水印(图片水印,文字水印) 20.生成 or 解析 二维码 21.HTML5 + JAVAEE WebSocket 通信技术 22.批量异步上传图片,可预览,有进度条,支持拖拽上传(百度...

    java源码包2

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码...

    java源码包3

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码...

    java源码包4

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码...

    Android天气APP

    基于Android的天气APP 前言 ... 多知天气,主要是给大家学习一下。 项目主要是12月23日开始建立,春节半个多月回家了,就没有写了。三月初完成了整个项目。耗时近两个月。平时在公司也就做点测试的... 蓝牙串口传输温度

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java二进制IO类与文件复制操作实例 16个目标文件 内容索引:Java源码,初学实例,二进制,文件复制 Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系...

    python入门到高级全栈工程师培训 第3期 附课件代码

    09 传输层和应用层 第2章 01 上节课复习 02 arp协议复习 03 字符编码 第3章 01 网络基础和dos命令 02 为何学习linux 03 课程内容介绍 04 操作系统内核与系统调用 05 操作系统安装原理 06 linux操作系统安装 07 ...

    JAVA上百实例源码以及开源项目源代码

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

Global site tag (gtag.js) - Google Analytics