Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ApachePOI&;在Android应用程序中插入图像时出现NoClassDefFoundError;微软Excel_Android_Excel_Image_Apache Poi - Fatal编程技术网

使用ApachePOI&;在Android应用程序中插入图像时出现NoClassDefFoundError;微软Excel

使用ApachePOI&;在Android应用程序中插入图像时出现NoClassDefFoundError;微软Excel,android,excel,image,apache-poi,Android,Excel,Image,Apache Poi,我想使用ApachePOI将PNG图像插入我的Excel工作表 为此,我使用以下代码: //add picture data to this workbook. InputStream is = new FileInputStream("/sdcard/MYAPPFOLDER/logo_app.png"); byte[] bytes = IOUtils.toByteArray(is); int pictureIdx = workbook.addPicture(bytes, Workbook.PI

我想使用ApachePOI将PNG图像插入我的Excel工作表

为此,我使用以下代码:

//add picture data to this workbook.
InputStream is = new FileInputStream("/sdcard/MYAPPFOLDER/logo_app.png");
byte[] bytes = IOUtils.toByteArray(is);
int pictureIdx = workbook.addPicture(bytes, Workbook.PICTURE_TYPE_JPEG);
is.close();

CreationHelper helper = workbook.getCreationHelper();

// Create the drawing patriarch.  This is the top level container for all shapes. 
Drawing drawing = sheet.createDrawingPatriarch();

//add a picture shape
ClientAnchor anchor = helper.createClientAnchor();
//set top-left corner of the picture,
//subsequent call of Picture#resize() will operate relative to it
anchor.setCol1(0);
anchor.setRow1(0);
Picture pict = drawing.createPicture(anchor, pictureIdx);

//auto-size picture relative to its top-left corner
pict.resize();
但是第一次我有一个错误,我通过添加这个库
commons-codec-1.8.jar来解决,现在我有了这个错误:

02-21 10:10:51.466: E/AndroidRuntime(31691): FATAL EXCEPTION: main
02-21 10:10:51.466: E/AndroidRuntime(31691): java.lang.NoClassDefFoundError: java.awt.Dimension
02-21 10:10:51.466: E/AndroidRuntime(31691):    at org.apache.poi.ss.util.ImageUtils.getImageDimension(ImageUtils.java:52)
02-21 10:10:51.466: E/AndroidRuntime(31691):    at org.apache.poi.hssf.usermodel.HSSFPicture.getImageDimension(HSSFPicture.java:243)
02-21 10:10:51.466: E/AndroidRuntime(31691):    at org.apache.poi.hssf.usermodel.HSSFPicture.getPreferredSize(HSSFPicture.java:163)
哪个指向这条线:

pict.resize();

如何修复它?

您不能使用涉及图形例程的纯Java库(
Java.awt
),因为Android没有实现它们,因为它使用自己的图形库。底线是,你不能在Android上使用你想要的库,尽管我相信还有其他方法可以完成你想要的任务


Android使用了一些基本类型,即
View
s、
Canvas
Drawable
s。看看这些,看看它们是否满足您的需要。

您不能使用包含图形例程的纯Java库(
Java.awt
),因为Android使用自己的图形库,所以没有实现它们。底线是,你不能在Android上使用你想要的库,尽管我相信还有其他方法可以完成你想要的任务



Android使用了一些基本类型,即
View
s、
Canvas
Drawable
s。看看它们是否满足您的需要。

您不能在Android中使用
java.awt.
包,请改用。请参见

您不能在Android中使用
java.awt.
软件包,请改用。请看

我已经导入了这个,但我认为您误解了同样的问题:您不能导入这个!AndroidI不支持使用此包中的类,但我认为您误解了同样的问题:您不能导入此包!AndroidI不支持使用这个包中的类,我知道这些类型,并且已经使用过它们,但是现在我使用的apache poi库需要这些类,不是我需要它们,你明白吗?哦,我希望没有,因此,无法通过androidYou中的ApachePOI插入图像您无法在Android中使用任何标准Java图形库,也无法扩展图形库。Android只是没有实现这一方面,因为他们使用自己的库。完全同意@pearsonatphotolook关于专用Android库的观点。看起来可能有用,但可能还有其他类型。我知道这些类型,并且已经使用过它们,但现在我使用的是需要这些类的apache poi库,不是我需要它们,你明白吗?哦,我希望没有,因此,没有办法在安卓中通过apache poi插入图像。你不能在安卓中使用任何标准的Java图形库,也没有任何扩展图形库的内容。Android只是没有实现这一方面,因为他们使用自己的库。完全同意@pearsonatphotolook关于专用Android库的观点。看起来可能有效,但可能还有其他问题。您找到解决此问题的方法了吗?找到解决此问题的方法了吗?