大家好,我有个小问题
我有这个代码把图像保存到SD卡上
public String SDSave( ) { //View arg0
// TODO Auto-generated method stub
OutputStream outStream = null;
File file = new File( extStorageDirectory , AdName + ".PNG");
try {
outStream = new FileOutputStream(file);
bm.compress(Bitmap.CompressFormat.PNG, 100, outStream);
outStream.flush();
outStream.close();
Toast.makeText(WhereAmI.this, "Saved", Toast.LENGTH_LONG).show();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Toast.makeText(WhereAmI.this, e.toString(), Toast.LENGTH_LONG).show();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
Toast.makeText(WhereAmI.this, e.toString(), Toast.LENGTH_LONG).show();
}
}
我用另一种方法叫它:
String sdSave = SDSave(extStorageDirectory + "/qr11.PNG");
im显示两个错误,第一个是在
public String SDSave( )
处的方法,它说:This method must return a result of type String
第二个是在
String sdSave = SDSave(extStorageDirectory + "/qr11.PNG");
它说:The method SDSave() in the type WhereAmI is not applicable for the arguments (String)
请帮忙修理它…..
谢谢您
最佳答案
您将方法声明为public String
这意味着它必须从函数返回一个字符串对象(使用return
关键字)如果您不希望函数返回任何内容,请使用void
关键字而不是String
。
第二个错误意味着您在调用SDSave
方法时使用字符串作为参数(SDSave(extStorageDirectory + "/qr11.PNG");
),而此函数不接受参数(public String SDSave( )
)。
我建议你试试Java tutorial或two,因为这些规则是Java的基础知识(实际上是许多编程语言)。