如何将第一个字母替换为编辑文本的自动编号

时间:2016-07-07 21:15:58

标签: java android

我对android / java很新。 我在windows CE上使用C#使该功能完全正常运行,因此当用户使用C#扫描TextBox时,它在cardnumber中所做的就是将文本放入KD55条形码阅读器;然后,例如,在TextBox中拍摄了带有 1.0D55 2.1D55 3.2D55 and so on 文字的3张照片,然后使用以下名称保存照片:

  1.0Y61
  2.1Y61
  3.2Y61 and so on

然后他拿了一个新的Y61,然后它会像这样

  btn_take_photo.setOnClickListener(new FloatingActionButton.OnClickListener() {
                @Override
                public void onClick(View view) {              
              cameraimage();
                }
            });        
               jpegCallback = new Camera.PictureCallback() {
                @Override
                public void onPictureTaken(byte[] bytes, Camera camera) {
                    FileOutputStream outputStream = null;
                                 return;
                    }

String text = cardnumberbox.getText().toString().trim();
                for(int i = 0; i < 100; i++)
                {
                    if(text.substring(0,1).equals("K"))
                    {
                        text = (i+1) + "." + i + text.substring(1);
                    }
                    else
                    {
                        text=(i+1) + "." + i + text ;//.substring(0));
                    }
                }
                String photofile = text + ".jpg";


                String file_name = file_image.getAbsolutePath() + "/" + photofile;
                    File picfile = new File(file_name);
                    try {
                        outputStream = new FileOutputStream(picfile);
                        outputStream.write(bytes);
                        outputStream.close();
                    } catch (FileNotFoundException e) {
                    } catch (IOException ex) {
                    } finally {

                    }
        refreshcamera();
                    refreshgallery(picfile);
    private void refreshgallery(File file) {
    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
    intent.setData(Uri.fromFile(file));
    sendBroadcast(intent);
}

我希望有人可以帮我解决这个问题或将其翻译成Java / Android

string str1 = this.textBoxCardNumber.Text.Substring(0, 1) == "K" ? this.textBoxCardNumber.Text.Substring(1) : this.textBoxCardNumber.Text;
    string str2 = (string) (object) Directory.GetFiles(this.picturesPath, "*" + str1 + ".JPG").Length + (object) str1;
            this.takenPictures.Add(this.picturesPath + str2 + ".JPG");
            this.Cam.SnapshotFile.Filename = str2;

我是如何在C#

中完成的
public static void Main(string[] args)
{
    Process.Start("tput", "civis -- invisible");
    Console.WriteLine("Hello World!");
    Console.Read(); // no cursor
    Process.Start("tput", "cnorm -- normal");
    Console.Read(); // with cursor
}

2 个答案:

答案 0 :(得分:1)

试试这种方式。我假设3张照片(根据你的问题)。所以我在for loop

中放了3个
import java.io.*;

class StackOvr
{
    public static void main(String jsk[])
    {
        String str = "KD55";

        for(int i = 0; i < 3; i++)
        {
            if(str.substring(0,1).equals("K"))
            {
                System.out.println( (i+1) + "." + i + str.substring(1));
            }
            else
            {
                System.out.println( (i+1) + "." + i + str);//.substring(0));
            }
        }
    }
}

这是我自己测试的代码。

  

输出

1.0D55
2.1D55
3.2D55

这可能对你有所帮助。

答案 1 :(得分:1)

在Sathish的帮助下使用点击计数器解决了这个问题

private int counter = 0;
btn_take_photo.setOnClickListener(new FloatingActionButton.OnClickListener() {
            @Override
            public void onClick(View view) {                
                counter++;
                count.setText(String.valueOf(counter));
                cameraimage();
            }
        });
             @Override
            public void onPictureTaken(byte[] bytes, Camera camera) {
                String Counting = count.getText().toString().trim();
                String text = cardnumberbox.getText().toString().trim();
                {
                    if(text.substring(0,1).startsWith("K"))
                    {
                        text =  Counting+text.substring(1);
                    }
                    else
                    {
                        text=  Counting+text ;//.substring(0));
                    }
                }

                String photofile =text + ".jpg";