在我的应用程序中,您需要将照片保存到SD卡,然后用户可以选择如何处理它.删除,保存或发送.如果按删除键.File.delete()当我在画廊中查看时,我称之为删除文件,然后当我稍后回去时,我看到一个黑色图像,说文件无法加载.该图像是我之前尝试删除的图像.这有什么问题,为什么它不会完全消失?
我如何保存图像:
public static File getOutputMediaFile(byte[] data){
image= BitmapFactory.decodeByteArray(data, 0, data.length);
File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "FrontFlash");
// Create the storage directory if it does not exist
if (!mediaStorageDir.exists()){
if (!mediaStorageDir.mkdirs()) return null;
}
// Create a media file name
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
File mediaFile;
mediaFile = new File(mediaStorageDir.getPath() + File.separator + "IMG_" + timeStamp + ".jpg");
return mediaFile;
}
@Override
public void onPictureTaken(byte[] data, Camera camera){
pictureFile = Util.getOutputMediaFile(data);
if (pictureFile == null){
Toast.makeText(this, …Run Code Online (Sandbox Code Playgroud) 我目前正在使用BigDecimal,它给了我更多的小数,但还不足以满足我的目的.我需要能够一直到10 ^ 6数字.这是我目前的代码
BigDecimal num = new BigDecimal(103993/33102.0);
pw.println(num.toString());
Run Code Online (Sandbox Code Playgroud)
它输出3.14159265301190249175533608649857342243194580078125
其中数字实际上有更多的小数:http://www.wolframalpha.com/input/?i = 103993%2F33102
我正在编写一个程序来计算数字的十进制扩展103993/33102,我想打印出所有的尾随小数,具体取决于用户输入的数字.它可以快速运行所有数字,10^5但是如果输入10^6程序需要大约5分钟才能打印出答案.我怎样才能加快速度?我尝试了两种不同的方法,一种使用BigDecimal,另一种使用字符串,而且没有一种方法有效.
public static void main(String[] args) throws NumberFormatException,
IOException {
// BigDecimal num1 = new BigDecimal(103993);
// BigDecimal num2 = new BigDecimal(33102);
String repNum = "415926530119026040722614947737296840070086399613316";
// pw.println(num.toString());
String sNum = "3.1";
// pw.println(repNum.length());
int cases = Integer.parseInt(br.readLine());
int dec;
for (int i = 0; i < cases; i++) {
sNum = "3.1";
dec = Integer.parseInt(br.readLine());
if (dec == 0)
pw.println("3");
else if (dec <= 52) {
sNum += repNum.substring(0, dec - …Run Code Online (Sandbox Code Playgroud) 我正在尝试学习python,我正在阅读编程python.我非常了解java所以我决定尝试python.我将通过一个使用循环的示例,我对此代码中发生的事情感到困惑
for person in people:
for (name, value) in person:
if name == 'name': print(value)
Run Code Online (Sandbox Code Playgroud)
我知道有两个循环,每次循环时person增加1,我不理解的是第二个循环中(name,value)发生了什么.有人可以向我解释发生了什么事吗?
打印出-1我可能会错过这种情况,因为"德国"绝对是在数组中
public class A
{
static PrintWriter pw = new PrintWriter(System.out, true);
public static void main(String[] args) throws IOException
{
String[] a = new String[4];
a[0]="India";
a[1]="Italy";
a[2]="Germany";
a[3]="India";
pw.println(Arrays.binarySearch(a, "Germany"));
}
}
Run Code Online (Sandbox Code Playgroud) 所以我正在创建和使用相机API的应用程序.该应用程序即将完成它只需要添加一些功能.但是,当我尝试在模拟器或我的手机上从eclipse启动应用程序时,它会创建一个运行时错误,指出无法恢复活动:无法连接到相机服务.我尝试了多个模拟器,是的,相机选项已打开.我很困惑,为什么它在导出为apk并安装在我的手机上时运行完美但在我尝试调试它或模拟器形式eclipse时不起作用.有任何想法吗?因为我现在不可能错误地跟踪.我看过很多与无法连接到相机服务相关的帖子,但没有运气适用于我的情况.
旁注:此外,相机过去工作正常,几天前运行这个确切的应用程序,没有任何麻烦.我的想法是它与eclipse有关.由于从apk运行时,应用程序在我的手机上完美运行
更新:我卸载了eclipse并重新安装它,同样的错误仍在发生.怎么了?当我在eclipse ahhg中运行它时,这段代码不起作用
我的LogCat:
05-27 22:20:55.197: E/AndroidRuntime(419): FATAL EXCEPTION: main
05-27 22:20:55.197: E/AndroidRuntime(419): java.lang.RuntimeException: Unable to resume activity {com.fuchs.frontcam/com.fuchs.frontcam.MainActivity}: java.lang.RuntimeException: Fail to connect to camera service
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2120)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2135)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1668)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.os.Handler.dispatchMessage(Handler.java:99)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.os.Looper.loop(Looper.java:123)
05-27 22:20:55.197: E/AndroidRuntime(419): at android.app.ActivityThread.main(ActivityThread.java:3683)
05-27 22:20:55.197: E/AndroidRuntime(419): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 22:20:55.197: E/AndroidRuntime(419): at java.lang.reflect.Method.invoke(Method.java:507) …Run Code Online (Sandbox Code Playgroud) 我完全不知道为什么这会产生错误.有人可以解释一下.
import java.io.File;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.view.View;
public final class Util
{
static Bitmap image;
public static File getOutputMediaFile(byte[] data)
{
image= BitmapFactory.decodeByteArray(data, 0, data.length);
File mediaStorageDir = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "FrontFlash");
// Create the storage directory if it does not exist
if (!mediaStorageDir.exists())
{
if (!mediaStorageDir.mkdirs()) return null;
}
// Create a media file name
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
File mediaFile=null;
//mediaFile = new File(mediaStorageDir.getPath() + File.separator + "IMG_" + timeStamp + ".jpg");
mediaFile = new …Run Code Online (Sandbox Code Playgroud) 我在下面运行以下代码我得到所有其他字段的有效值,但不是为什么日期?日期始终为空.我尝试使用createdAt和updatedAt null来获取所有结果.有什么理由为什么我总是变空?即使我得到其他字段的准确值?
String fbId = getActivity().getIntent().getExtras().getString("fbId");
ParseQuery<ParseUser> query = ParseUser.getQuery();
query.whereEqualTo("facebookId", fbId);
query.findInBackground(new FindCallback<ParseUser>() {
public void done(List<ParseUser> users, ParseException e) {
if (e == null) {
ParseUser user = users.get(0);
bioText.setText(user.getString("aboutBio"));
collegeText.setText(user.getString("aboutCollege"));
degreeText.setText(user.getString("aboutDegree"));
Date lastActive = (Date) user.getDate("createdAt");
Log.d("", "date is " +lastActive);
Calendar myCal = new GregorianCalendar();
myCal.setTime(lastActive);
lastPing.setText("skewp"+ myCal.getTimeInMillis());
} else {
}
}
});
Run Code Online (Sandbox Code Playgroud)

我在输入后运行代码
1 qwertyuiopasdfghjklzxcvbnm
将
它仍然打印出意志而不是替换像它应该的人物,这是为什么?
public static void main(String[] args)
{
String input="";
int cases= sc.nextInt();
String al= sc.next();
String upAl= al.toUpperCase();
char [] upAlph = upAl.toCharArray();
char[] alph = al.toCharArray();
for(int i=0; i<cases; i++)
{
input=sc.next();
input.replaceAll("a", ""+ alph[0]);
input.replaceAll("b", ""+ alph[1]);
input.replaceAll("c", ""+ alph[2]);
input.replaceAll("d", ""+ alph[3]);
input.replaceAll("e", ""+ alph[4]);
input.replaceAll("f", ""+ alph[5]);
input.replaceAll("g", ""+ alph[6]);
input.replaceAll("h", ""+ alph[7]);
input.replaceAll("i", ""+ alph[8]);
input.replaceAll("j", ""+ alph[9]);
input.replaceAll("k", ""+ alph[10]);
input.replaceAll("l", ""+ alph[11]);
input.replaceAll("m", ""+ alph[12]);
input.replaceAll("n", ""+ …Run Code Online (Sandbox Code Playgroud) 我试图转换Int?为String并将其分配给标签而不包括可选文本.我目前有:
struct Choice: Mappable{
var id: String?
var choice: String?
var questionId: String?
var correct: Bool?
var responses: Int?
init?(map: Map) {
}
mutating func mapping(map: Map) {
id <- map["id"]
questionId <- map["questionId"]
choice <- map["choice"]
correct <- map["correct"]
responses <- map["responses"]
}
}
Run Code Online (Sandbox Code Playgroud)
在访问它的类中
var a:String? = String(describing: self.currentResult.choices?[0].responses)
print("\(a!)")
Run Code Online (Sandbox Code Playgroud)
输出是:
Optional(1)
我如何只输出1并删除可选文本?
java ×7
android ×4
bigdecimal ×2
file ×2
algorithm ×1
delete-file ×1
eclipse ×1
for-loop ×1
formatting ×1
image ×1
math ×1
performance ×1
python ×1
replace ×1
string ×1
swift ×1