Zum Inhalt springen

RecordStoreManagement Java2 Micro Edition -> Problem!?


Empfohlene Beiträge

Geschrieben

Halli Hallo,

moechte direkt mit einer fuer mich wichtigen Frage starten:

folgendes Problem: ich moechte einen Wert (temp_id -> nur als Bsp) in

einen Recordstore schreiben. Leider wird durch den u. g. Code dieser

Wert immer ueberschrieben. Die Ausgabe ist also immer "49". Alle

einzelnen Werte sollen aber ausgegeben werden. Wie kann ich das

Problem loesen?

schnipp----------------------------------

public void save() {

int temp_x, temp_y, temp_id = 0;

Lesson temp_lesson;

String temp_code = "";

openRMS(); // oeffnet den recordstore

for(temp_x = 0; temp_x < 5; temp_x++) { // hat einen sinn :)

for(temp_y = 0; temp_y < 10; temp_y++) { // ""

temp_code = String.valueOf(temp_id); // 0 - 49

byte[] rec = temp_code.getBytes(); //

try {

id = rs.addRecord(rec, 0, rec.length); // REcord hinzufuegen

}

catch (Exception e){}

temp_id++;

}

}

closeRMS(); // schliesst recorstore

}

Gelesen wird das ganze hiermit:

schnipp-----------------------------------------------------

public void load() {

int temp_x, temp_y, temp_id;

String temp_code = "";

temp_id = 0;

openRMS();

for(temp_x = 0; temp_x < 5; temp_x++) {

for(temp_y = 0; temp_y < 10; temp_y++) {

// ...

try {

byte holen[] = new byte[100];

int gelesen = rs.getRecord( id[temp_id], holen, 0 );

temp_code = new String( holen, 0, gelesen);

}catch (Exception e) {

e.toString();

}

temp_lesson.set_code(temp_code);

} catch(LessonUndefinedException e) {}

temp_id++;

}

}

closeRMS();

}

--------------------------------------------------------

Was mache ich falsch?

Vielen Dank!!

lesezeichen

Geschrieben

1. bei save ist temp_id immer 0, oder habe ich eine zuweisung übersehen?

2. bei load ist id (zumindest in dem ausschnitt) nicht definiert.

allgemein: nimm das nächste mal bitte CODE oder PHP, dann wird der quelltext min ordenlich formatiert. Danke.

Geschrieben

OK, es geht sich erstmal um das speichern. temp_id ist nicht immer 0, sie wird nach jedem schleifendurchlauf inkrementiert.

nochmal der Code:



public void save() {

int temp_x, temp_y, temp_id = 0;
Lesson temp_lesson;
String temp_code = "";

openRMS(); // oeffnet den recordstore

for(temp_x = 0; temp_x < 5; temp_x++) { // hat einen sinn
for(temp_y = 0; temp_y < 10; temp_y++) { // ""

temp_code = String.valueOf(temp_id); // 0 - 49
byte[] rec = temp_code.getBytes(); //

try {
id = rs.addRecord(rec, 0, rec.length); // REcord hinzufuegen
}
catch (Exception e){}
temp_id++;
}
}
closeRMS(); // schliesst recorstore
}
[/PHP]

Workaround: Es muss eine Moeglichkeit geben das Byte-Array (steht ja fuer den String) wiederrum in ein Array zu packen, dass die einzelnen Byte-Array-Inhalte via direktem Zugriff verfuegbar macht.

es soll also so sein:

zugriff: [1] inhalt: 1

zugriff: [2] inhalt: 2

etc...

aber wie macht man das?

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...