2016-04-05 8 views
0

私は患者の詳細を取り、テキストファイルに保存する基本的な患者詳細アクティビティを持っています。現時点では、編集テキストフィールドから受け取っている入力は、編集しようとしているテキストのヒントであり、入力しようとしている実際の情報ではありません。私には私のコードは完璧なようだと私は私が間違っているつもりですどこを見ることができない。EditTextからの入力は、テキストの代わりにヒントを入力するだけです

public class PatientDetails extends AppCompatActivity { 

public EditText IDNum, name, DOB, weight, height; 
public String ID, dob, wght, hght, nme; 
public Button b; 
public TextView t; 
private FileUtility myFile = new FileUtility(); 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_patient_details); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    IDNum = ((EditText) findViewById(R.id.IDnum)); 
    DOB = ((EditText) findViewById(R.id.DOB)); 
    weight = ((EditText) findViewById(R.id.Weight)); 
    height = ((EditText) findViewById(R.id.Height)); 
    name = ((EditText) findViewById(R.id.name)); 
    b = ((Button) findViewById(R.id.submit)); 

    t = ((TextView) findViewById(R.id.result)); 

    b.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      ID = IDNum.getText().toString(); 
      dob = DOB.getText().toString(); 
      wght = weight.getText().toString(); 
      hght = height.getText().toString(); 
      nme = name.getText().toString(); 

      myFile.createFile(getApplicationContext(), "test"); 
      myFile.writeLine(ID); 
      myFile.writeLine(dob); 
      myFile.writeLine(wght); 
      myFile.writeLine(hght); 
      myFile.writeLine(nme); 
      t.setText(myFile.readAll()); 
     } 

    }); 


    } 

} 

XMLコード:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" 
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" 
app:layout_behavior="@string/appbar_scrolling_view_behavior" 
tools:showIn="@layout/activity_patient_details" 
tools:context="com.example.user.filetest.PatientDetails"> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="textPersonName" 
    android:hint="Name" 
    android:ems="10" 
    android:id="@+id/name" 
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="number" 
    android:ems="10" 
    android:id="@+id/IDnum" 
    android:layout_below="@+id/name" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:hint="Patient ID number" /> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="number" 
    android:ems="10" 
    android:id="@+id/Height" 
    android:layout_below="@+id/IDnum" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:hint="Height" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="number" 
    android:ems="10" 
    android:id="@+id/Weight" 
    android:hint="Weight" 
    android:layout_below="@+id/Height" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" /> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:inputType="date" 
    android:ems="10" 
    android:id="@+id/DOB" 
    android:layout_below="@+id/Weight" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentStart="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentEnd="true" 
    android:hint="DOB" /> 

<Button 
    android:hint="Submit" 
    android:id="@+id/submit" 
    android:layout_width="300dp" 
    android:layout_height="70dp" 
    android:layout_below="@+id/DOB" 
    android:layout_centerHorizontal="true" 
    android:layout_marginTop="70dp" /> 

<TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:id="@+id/result" 
    android:layout_below="@+id/submit" 
    android:layout_marginTop="53dp" 
    android:layout_alignLeft="@+id/submit" 
    android:layout_alignStart="@+id/submit" 
    android:layout_alignRight="@+id/submit" 
    android:layout_alignEnd="@+id/submit" 
    android:textSize="7dp" /> 

/////ファイルユーティリティ////// ///

public class FileUtility { 

private File root; 
private File file; 

public FileUtility() { 
    root = Environment.getExternalStorageDirectory(); 
} 

public void createFile(Context context, String fileName) { 
    try { 
     if (root.canWrite()) { 
      file = new File(root, "//" + fileName); 
      if (!file.exists()) { 
       file.createNewFile(); 
      } 
     } 
     else 
     { 
      file = new File(context.getFilesDir(), "//" + fileName); // File(root, "//" + fileName); 
      if (!file.exists()) { 
       file.createNewFile(); 
      } 
     } 
    } catch (IOException e) { 
     Log.e("Error", "fail to create a new file"); 
    } 

} 


public String readAll() { 
    StringBuilder returnString = new StringBuilder(); 
    try { 
     BufferedReader in; 
     FileReader datawriter = new FileReader(file); 
     in = new BufferedReader(datawriter); 
     if (file.exists()) { 
      String str = null; 
      while((str=in.readLine())!=null) 
      { 
       returnString.append(str + "\n"); 
      } 
     } 
     in.close(); 
    } catch (IOException e) { 
     Log.e("Error", "fail to write file"); 
    } 
    return returnString.toString(); 
} 

public void writeLine(String message) { 
    try { 
     BufferedWriter out; 
     FileWriter datawriter = new FileWriter(file,true); 
     out = new BufferedWriter(datawriter); 
     if (file.exists()) { 
      out.write(message + "\n"); 
      out.flush(); 
     } 
     out.close(); 
    } catch (IOException e) { 
     Log.e("Error", "fail to write file"); 
    } 
} 

}

+0

は、あなたが完全なJavaとXMLのコードを提供することができますか? – Kaushal28

+0

テキストヒントがあることをどのように知っていましたか?テキストビューからのみ?次に、あなたのメソッドmyFile.readAll()を見せてください。何か間違っていると思います... – Opiatefuchs

+0

フルコードを入力してください – Kaushal28

答えて

-1

てみ海コードをもう一度実行してください。 EditText要素のテキストとしてそのヒントをハードにあらかじめ入力していない限り、getText()メソッドからヒントテキストを取得することはできません。

-1

は多分これを試してみてください:

IDNum = (EditText) findViewById(R.id.IDnum);

+2

余分なブレスレットは不要ですが、この問題は発生しません.... – Opiatefuchs

+0

私は同意します。これはOPが提起したむしろ独特の問題です。 –

関連する問題