最近在做图片读写,从服务器上读一张图片,存到手机的SD卡上。一开始是用的FileInputStream和FileOutputStream,但很多时候图片都损坏了,我也不明白是什么原因。有人建议我用ImageReader一系列的东西,我就尝试了一下。但是报出了这么一个错误:java.lang.NoClassDefFoundError:javax.imageio.ImageIO
我看了一下ImageIO在JRE System library中,我用的是jdk1.6.0_10。从网上搜了一下错误,说是包重复,我这也没发现重复现象。所以请各位高手半个帮,我做开发时间不长,还请多多帮助。另外,存取图片,怎样解决图片失真,损坏问题呢?
代码1:获取服务器连接
public InputStream getInputStream(String serverpath) throws Exception{ InputStream in=null; URL url = new URL(serverpath); httpurlconnection = (HttpURLConnection) url .openConnection(); httpurlconnection.setRequestMethod("POST"); httpurlconnection.setRequestProperty("Content-Type", "text/html"); httpurlconnection.setConnectTimeout(1000); httpurlconnection.setDoOutput(true); httpurlconnection.setDoInput(true); httpurlconnection.setUseCaches(false); httpurlconnection.connect(); System.out.println(123); in=url.openStream(); System.out.println(456); return in; }
代码2:存取图片
public void savepic(List<String> list,String packagename) throws Exception{ String filename=""; String url=""; for(int i=0;i<list.size();i++){ /* * ---第一张图片:图标 xxx0.png * ---第二张图片:大图1 xxx1.png * ---第三张图片:大图2 xxx2.png * ---第四张图片:star全 xxx3.png * ---第五张图片:star半 xxx4.png */ filename=list.get(i); System.out.println(filename.split("\\.")[0]); url="http://www.gyswad.com:90/push/"+filename; InputStream inputStream=getInputStream(url); FileOutputStream output = null; // ByteArrayOutputStream out=null; try { // 存储到SD卡 File sdFile = new File(sdcard_path + "/"+packagename+"/"+ filename.split("\\.")[0]+".gif"); File f1 = new File(sdcard_path); File f2=new File(sdcard_path+"/"+packagename); if (!f1.exists()) { f1.mkdir();// 创建文件夹 } if(!f2.exists()){ f2.mkdir(); } if (!sdFile.exists()) { sdFile.createNewFile();// 创建文件 // 写入文件 Iterator<ImageReader> readers=ImageIO.getImageReadersByFormatName("gif"); ImageReader reader=readers.next(); ImageInputStream iis=ImageIO.createImageInputStream(inputStream); reader.setInput(iis,true); BufferedImage bi=reader.read(0); Iterator<ImageWriter> writers=ImageIO.getImageWritersByFormatName("gif"); ImageWriter writer=writers.next(); ImageOutputStream ios=ImageIO.createImageOutputStream(sdFile); writer.setOutput(ios); writer.write(bi); //之前是用的这种方式 // output = new FileOutputStream(sdFile); // byte buffer[] = new byte[inputStream.available()]; // while (inputStream.read(buffer,0,buffer.length) != -1) { // output.write(buffer); // } // iis.close(); // ios.close(); } // if(output!=null){ // output.flush(); // } } catch (Exception e) { e.printStackTrace(); System.out.println("savepic Exception:"+e); } finally { if(inputStream!=null){ inputStream.close(); } if(output!=null){ output.close(); } if(httpurlconnection!=null){ httpurlconnection.disconnect(); } } } }
相关推荐
赠送jar包:imageio-psd-3.1.1.jar; 赠送原API文档:imageio-psd-3.1.1-javadoc.jar; 赠送源代码:imageio-psd-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-psd-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:jai-imageio-core-1.4.0.jar; 赠送原API文档:jai-imageio-core-1.4.0-javadoc.jar; 赠送源代码:jai-imageio-core-1.4.0-sources.jar; 赠送Maven依赖信息文件:jai-imageio-core-1.4.0.pom; 包含...
赠送jar包:jai-imageio-core-1.3.0.jar; 赠送原API文档:jai-imageio-core-1.3.0-javadoc.jar; 赠送源代码:jai-imageio-core-1.3.0-sources.jar; 赠送Maven依赖信息文件:jai-imageio-core-1.3.0.pom; 包含...
赠送jar包:imageio-core-3.1.1.jar; 赠送原API文档:imageio-core-3.1.1-javadoc.jar; 赠送源代码:imageio-core-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-core-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-tiff-3.1.1.jar; 赠送原API文档:imageio-tiff-3.1.1-javadoc.jar; 赠送源代码:imageio-tiff-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-tiff-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-core-3.1.1.jar; 赠送原API文档:imageio-core-3.1.1-javadoc.jar; 赠送源代码:imageio-core-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-core-3.1.1.pom; 包含翻译后的API文档:...
jai-imageio-core-1.3.0.1.jar jai-imageio-core-1.3.0.1.jar
赠送jar包:jai-imageio-core-1.4.0.jar; 赠送原API文档:jai-imageio-core-1.4.0-javadoc.jar; 赠送源代码:jai-imageio-core-1.4.0-sources.jar; 赠送Maven依赖信息文件:jai-imageio-core-1.4.0.pom; 包含...
赠送jar包:imageio-bmp-3.1.1.jar; 赠送原API文档:imageio-bmp-3.1.1-javadoc.jar; 赠送源代码:imageio-bmp-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-bmp-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-jpeg-3.1.1.jar; 赠送原API文档:imageio-jpeg-3.1.1-javadoc.jar; 赠送源代码:imageio-jpeg-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-jpeg-3.1.1.pom; 包含翻译后的API文档:...
一个可以支持通过Java进行图片转换的jar包,封装好了跨平台动态链接库调用支持。https://link.zhihu.com/?target=https%3A//github.com/nintha/webp-imageio-core
《JAI ImageIO-1.1-alpha.jar在OCR项目中的应用与详解》 在数字化信息时代,光学字符识别(OCR)技术已经成为了处理大量文本数据的重要工具。在进行OCR项目时,选择合适的库和组件至关重要,其中“jai_imageio-1.1-...
赠送jar包:imageio-metadata-3.1.1.jar; 赠送原API文档:imageio-metadata-3.1.1-javadoc.jar; 赠送源代码:imageio-metadata-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-metadata-3.1.1.pom; 包含...
`webp-imageio-10.和1.6(不要积分)`这个标题可能指的是两个不同版本的WebP ImageIO插件,分别是1.0和1.6。这些插件扩展了Java的ImageIO库,使得开发者能够用标准的ImageIO API来读取和写入WebP格式的图像。 **...
赠送jar包:imageio-tiff-3.1.1.jar; 赠送原API文档:imageio-tiff-3.1.1-javadoc.jar; 赠送源代码:imageio-tiff-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-tiff-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-jpeg-3.1.1.jar; 赠送原API文档:imageio-jpeg-3.1.1-javadoc.jar; 赠送源代码:imageio-jpeg-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-jpeg-3.1.1.pom; 包含翻译后的API文档:...
赠送jar包:imageio-psd-3.1.1.jar; 赠送原API文档:imageio-psd-3.1.1-javadoc.jar; 赠送源代码:imageio-psd-3.1.1-sources.jar; 赠送Maven依赖信息文件:imageio-psd-3.1.1.pom; 包含翻译后的API文档:...
dcm4che-imageio-opencv-5.22.5
在给定的压缩包文件中,包含了两个关键的JAR(Java Archive)库,它们是`jai_imageio-1.1-alpha.jar`和`swingx-0.9.5-2.jar`,主要用于Java中的图像处理和增强Swing组件的功能。 首先,`jai_imageio-1.1-alpha.jar`...
该工具类用于java代码ImageIO.read()的文件为jpg格式,且色彩模式为cmyk格式时抛异常Unsupported Image Type 可以导入该工具类,代码不需要加任何处理,再次运行即可。下载前请先参考...