小编Wil*_*son的帖子

File.delete()不会完全删除留下的图像空白图像文件

在我的应用程序中,您需要将照片保存到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)

java android image file delete-file

8
推荐指数
1
解决办法
2179
查看次数

在除法后获取数字中的所有小数位

我目前正在使用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

java formatting bigdecimal

7
推荐指数
1
解决办法
2万
查看次数

对于大输入,十进制扩展程序运行速度非常慢

我正在编写一个程序来计算数字的十进制扩展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)

java algorithm math performance bigdecimal

5
推荐指数
1
解决办法
240
查看次数

这个循环如何工作?

我正在尝试学习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)发生了什么.有人可以向我解释发生了什么事吗?

python for-loop

3
推荐指数
1
解决办法
233
查看次数

为什么这个二进制搜索返回-1,即使该元素在数组中

打印出-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)

java binary-search

3
推荐指数
2
解决办法
651
查看次数

无法连接到相机错误,但导出到apk时工作

所以我正在创建和使用相机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)

eclipse android android-camera

2
推荐指数
1
解决办法
2738
查看次数

无法解析符号createTempFile

我完全不知道为什么这会产生错误.有人可以解释一下.

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)

java android file

2
推荐指数
1
解决办法
1276
查看次数

ParseUser.getDate("createdAt")始终为null

我在下面运行以下代码我得到所有其他字段的有效值,但不是为什么日期?日期始终为空.我尝试使用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)

在此输入图像描述

java android parse-platform

2
推荐指数
1
解决办法
1009
查看次数

replaceAll不替换子串

我在输入后运行代码

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)

java string replace

1
推荐指数
1
解决办法
318
查看次数

在Swift中将Int转换为String并删除可选的包装?

我试图转换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并删除可选文本?

swift

1
推荐指数
1
解决办法
1526
查看次数