[英]Java ImageIO.write to classpath?
我正在嘗試使用ImageIO
類保存圖像,然后使用輸入流獲取資源。 我的問題是,每當嘗試創建輸入流時,我都會不斷收到NullPointerException
。 如果我只是簡單地將圖像文件放在類路徑中,那么它將起作用。 這是我的代碼:
ImageIO.write(image, "png", new File("temp.png"));
InputStream imgIs = AptCap.class.getResourceAsStream("temp.png");
byte[] imgData = new byte[imgIs.available()]; // I get null here.
我也嘗試為兩個驅動器指定C驅動器上文件的直接位置,但是我仍然收到空指針異常。 我寧願不這樣做,而只是將其保留在類路徑中(出於對多操作系統支持的目的)。
ByteArrayOutputStream baos = new ByteArrayOutputStream(); // create OutputStream
ImageIO.write(image, "png", baos); // write to OS
InputStream imgIs = new ByteArrayInputStream(baos.toByteArray()); // grab bytes from OS
//..
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.