Hier ist mein Code, der einen Text aus dem ersten Textfeld in Pashto, aber in Englisch Syntax und konvertiert in Pashto-Syntax durch Klicken auf die Schaltfläche, läuft es cool , aber das Problem ist, dass wenn konvertiert am Ende zeigt es Null am Ende jeder Zeile und es zeigte auch nicht das letzte Zeichen in pashto Und für das gleiche Programm, wenn Sie einige einfache Möglichkeit haben, dann lass es mich wissen.Android: kein Fehler, aber die Nulloption am Ende der Zeile
Umgewandelte Sprache
package aims.khan.trans;
import java.util.HashMap;
import java.util.Map;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
Button btnconvert;
EditText txtconvertfrom, txtconvertto;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnconvert = (Button) findViewById(R.id.btnconvert);
txtconvertfrom = (EditText) findViewById(R.id.txtconvertfrom);
txtconvertto = (EditText) findViewById(R.id.txtconvertto);
btnconvert.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
String a = Conversion();
txtconvertto.setText(a);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public String Conversion() {
String a = null;
Map<String, String> map = new HashMap<String, String>();
map.put(" ", "\u0020");
map.put("A", "\u0627");
map.put("a", "\u0627");
map.put("B", "\u0628");
map.put("b", "\u0628");
// map.put("C" , "\u0686");
// map.put("c" , "\u0686");
map.put("CH", "\u0686");
map.put("ch", "\u0686");
map.put("D", "\u062F");
map.put("d", "\u062F");
map.put("E", "\u064A");
map.put("e", "\u064A");
map.put("F", "\u0641");
map.put("f", "\u0641");
map.put("G", "\u06AB");
map.put("g", "\u06AB");
map.put("H", "\u062D");
map.put("h", "\u062D");
map.put("I", "\u064A");
map.put("i", "\u064A");
map.put("J", "\u062C");
map.put("j", "\u062C");
map.put("K", "\u0643");
map.put("k", "\u0643");
map.put("L", "\u0644");
map.put("l", "\u0644");
map.put("M", "\u0645");
map.put("m", "\u0645");
map.put("N", "\u0646");
map.put("n", "\u0646");
map.put("O", "\u0648");
map.put("o", "\u0648");
map.put("P", "\u0628");
map.put("p", "\u0628");
map.put("Q", "\u0642");
map.put("q", "\u0642");
map.put("R", "\u0631");
map.put("r", "\u0631");
map.put("S", "\u0633");
map.put("s", "\u0633");
map.put("sh", "\u0634");
map.put("T", "\u062A");
map.put("t", "\u062A");
map.put("U", "\u0648");
map.put("u", "\u0648");
map.put("V", "\u0648");
map.put("v", "\u0648");
map.put("W", "\u0648");
map.put("w", "\u0648");
map.put("X", "\u0633");
map.put("x", "\u0633");
map.put("Y", "\u064A");
map.put("y", "\u064A");
map.put("Z", "\u0632");
map.put("z", "\u0632");
map.put("TH", "\u062A");
map.put("th", "\u062A");
String convert = txtconvertfrom.getText().toString();
char[] convert2 = convert.toCharArray();
if (convert2.length <= 1) {
a += map.get(String.valueOf(convert2));
} else {
for (int i = 0; i < convert2.length - 1; i++) {
switch (convert2[i]) {
case 'c':
switch (convert2[i + 1]) {
case 'h':
a += map.get(String.valueOf("ch"));
i++;
continue;
case 'k':
a += map.get(String.valueOf("k"));
i++;
continue;
default:
break;
}
case 's':
switch (convert2[i + 1]) {
case 'h':
a += map.get(String.valueOf("sh"));
i++;
continue;
default:
break;
}
default:
a += map.get(String.valueOf(convert2[i]));
break;
}
}
}
return a;
}
}
Leistung zu verbessern: es genügt, die ** Karte zu erklären ** als Mitglied (= global) Variable 'static final Map Karte = new HashMap (); 'und dann initialisiere es einmal, z in 'onCreate()' –
0X0nosugar
danke saumik Ich habe es getan –