फ़ाइल एंड्रॉइड - जावा, एंड्रॉइड, फ़ाइल, साझा संदर्भ, बहुआयामी-सरणी से 2 डी सरणी मान पढ़ें

हाय मैं अपने डी 2 int सरणी से अपने मूल्य प्राप्त करना चाहता हूँएक पंक्ति। अगर फ़ाइल मौजूद नहीं है, तो मैं इसे बनाना चाहता हूं और मेले के सभी मानों को 0 पर सेट करना चाहता हूं। फिर जब सरणी में मान बदलते हैं तो मैं अपने सेव बटन पर क्लिक करना चाहता हूं, इसलिए फ़ाइल में मान बदलते हैं ताकि अगली बार जब मैं खोलूं ऐप को शुरुआत से नए मान मिलते हैं।

मैंने इस कोड को आजमाया और अब मेरा ऐप चलता है लेकिन शटडाउन के बाद "जारी [] []" में सभी मान बराबर 0 के बराबर होते हैं, न कि मेरे द्वारा सहेजे गए मान।

int[][] iss = new int [11][11];
String name;


public void readFile2(String fileName) {
SharedPreferences prefs = getPreferences(MODE_PRIVATE);

String savedString = prefs.getString(fileName, "");
StringTokenizer st = new StringTokenizer(savedString, ",");
for (int i = 0; i < 11; i++) {
while (st.hasMoreTokens()) {
iss[0][i] = Integer.parseInt(st.nextToken());
}
}

String savedString1 = prefs.getString(fileName + "1", "");
StringTokenizer st1 = new StringTokenizer(savedString1, ",");
for (int i = 0; i < 11; i++) {
while (st1.hasMoreTokens()) {
iss[1][i] = Integer.parseInt(st1.nextToken());
}
}

String savedString2 = prefs.getString(fileName + "2", "");
StringTokenizer st2 = new StringTokenizer(savedString2, ",");
for (int i = 0; i < 11; i++) {
while (st2.hasMoreTokens()) {
iss[2][i] = Integer.parseInt(st2.nextToken());
}
}

String savedString3 = prefs.getString(fileName + "3", "");
StringTokenizer st3 = new StringTokenizer(savedString3, ",");
for (int i = 0; i < 11; i++) {
while (st3.hasMoreTokens()) {
iss[3][i] = Integer.parseInt(st3.nextToken());
}
}

String savedString4 = prefs.getString(fileName + "4", "");
StringTokenizer st4 = new StringTokenizer(savedString4, ",");
for (int i = 0; i < 11; i++) {
while (st4.hasMoreTokens()) {
iss[4][i] = Integer.parseInt(st4.nextToken());
}
}

String savedString5 = prefs.getString(fileName + "5", "");
StringTokenizer st5 = new StringTokenizer(savedString5, ",");
for (int i = 0; i < 11; i++) {
while (st5.hasMoreTokens()) {
iss[5][i] = Integer.parseInt(st5.nextToken());
}
}

String savedString6 = prefs.getString(fileName + "6", "");
StringTokenizer st6 = new StringTokenizer(savedString6, ",");
for (int i = 0; i < 11; i++) {
while (st6.hasMoreTokens()) {
iss[6][i] = Integer.parseInt(st6.nextToken());
}
}

String savedString7 = prefs.getString(fileName + "7", "");
StringTokenizer st7 = new StringTokenizer(savedString7, ",");
for (int i = 0; i < 11; i++) {
while (st7.hasMoreTokens()) {
iss[7][i] = Integer.parseInt(st7.nextToken());
}
}

String savedString8 = prefs.getString(fileName + "8", "");
StringTokenizer st8 = new StringTokenizer(savedString8, ",");
for (int i = 0; i < 11; i++) {
while (st8.hasMoreTokens()) {
iss[8][i] = Integer.parseInt(st8.nextToken());
}
}

String savedString9 = prefs.getString(fileName + "9", "");
StringTokenizer st9 = new StringTokenizer(savedString9, ",");
for (int i = 0; i < 11; i++) {
while (st9.hasMoreTokens()) {
iss[9][i] = Integer.parseInt(st9.nextToken());
}
}

String savedString10 = prefs.getString(fileName + "10", "");
StringTokenizer st10 = new StringTokenizer(savedString10, ",");
for (int i = 0; i < 11; i++) {
while (st10.hasMoreTokens()) {
iss[10][i] = Integer.parseInt(st10.nextToken());
}
}
}

public void firstfile(){
Bundle extras = getIntent().getExtras();
fritis = extras.getIntArray("friti");//friti is value from spinner

if((fritis[0] == 0) && (fritis[1]== 10)){
String fileName = "all";
name=fileName;

readFile2(fileName);
}
else if((fritis[0] == 0) && (fritis[1]== 0)){
String fileName = "cer";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 1){
String fileName = "one";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 2){
String fileName = "two";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 3){
String fileName = "three";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 4){
String fileName = "four";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 5){
String fileName = "five";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 6){
String fileName = "six";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 7){
String fileName = "seven";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 8){
String fileName = "eight";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 9){
String fileName = "nine";
name=fileName;

readFile2(fileName);
}
else if(fritis[0] == 10){
String fileName = "ten";
name=fileName;

readFile2(fileName);
}


}

public void save_file(){//saves iss[][]

SharedPreferences prefs = getPreferences(MODE_PRIVATE);
StringBuilder str = new StringBuilder();
for (int i = 0; i < 11; i++) {
str.append(iss[0][i]).append(",");
}
prefs.edit().putString(name, str.toString());

StringBuilder str1 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str1.append(iss[1][i]).append(",");
}
prefs.edit().putString(name+"1", str1.toString());

StringBuilder str2 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str2.append(iss[2][i]).append(",");
}
prefs.edit().putString(name+"2", str2.toString());

StringBuilder str3 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str3.append(iss[3][i]).append(",");
}
prefs.edit().putString(name+"3", str3.toString());

StringBuilder str4 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str4.append(iss[4][i]).append(",");
}
prefs.edit().putString(name+"4", str4.toString());

StringBuilder str5 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str5.append(iss[5][i]).append(",");
}
prefs.edit().putString(name+"5", str5.toString());

StringBuilder str6 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str6.append(iss[6][i]).append(",");
}
prefs.edit().putString(name+"6", str6.toString());

StringBuilder str7 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str7.append(iss[7][i]).append(",");
}
prefs.edit().putString(name+"7", str7.toString());

StringBuilder str8 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str8.append(iss[8][i]).append(",");
}
prefs.edit().putString(name+"8", str8.toString());

StringBuilder str9 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str9.append(iss[9][i]).append(",");
}
prefs.edit().putString(name+"9", str9.toString());

StringBuilder str10 = new StringBuilder();
for (int i = 0; i < 11; i++) {
str10.append(iss[10][i]).append(",");
}
prefs.edit().putString(name+"10", str10.toString());


}

/ अग्रिम में धन्यवाद

उत्तर:

जवाब के लिए 0 № 1

मैं इसके लिए एंड्रॉइड में साझाप्रणाली तंत्र का उपयोग करने का सुझाव देता हूं। कुछ उदाहरणों के लिए इस प्रश्न को जांचें:

एंड्रॉइड पर साझा किए गए संदर्भों में एक सरणी या ऑब्जेक्ट जोड़ना संभव है


संबंधित सवाल
सबसे लोकप्रिय