-
Unnötige Leerzeischen werden übernommen
Hallo
Habe folgendes Problem. Frage über Java Daten ab. In der Datenbank (i515) ist für die Zelle eine Länge von 255 zeichen vorgesehen.
Der Inhalt der Zelle ist ca. 5-10 zeichen lang.
Mein Problem ist nun, dass ich immer ein 255 lagen String bekomme. Und zwar die 5-10 Zeichen und zusätzlich lauter leerzeichen.
Kann mir da mal wer einen Tipp geben wie ich dieses Problem lösen kann
Ich weiß leider nicht einmal wie ich dieses Problem in Google und co. suchen soll.
Danke im voraus
lg
Steffi
-
Hallo,
wie wäre es mit String.trim() ?
Gruß,
KM
-
Zitat von KM
Hallo,
wie wäre es mit String.trim() ?
Gruß,
KM
Hallo KM
Danke für Deine Hilfe.
Dass habe ich mir auch schon Überlegt. Aber dann nimmt er mir ja alle Lehrzeichen weg, oder? Und in den 5-10 Zeichen können ebenfalls Lehrzeichen enthalten sein, die erhalten bleichen sollen.
lg
Steffi
-
Hallo KM
Habe mir nochmals die trim Funktion durchgelesen. Du hast ja sowas von recht.
http://gailer-net.de/tutorials/java/...9/ch29_14.html
Ich bin immer davon ausgegangen, dass die Datenbank mir zuviele Daten sendet.
Vielen vielen Dank
lg
Steffi
-
Allerdings entfernt diese auch die Leerzeichen am Anfang!
Hier 2 Methoden zum Enfernen am Anfang oder am Ende, falls trim() zu viel macht:
http://www.xinotes.org/notes/note/1418/
-
oder die normale Trim Methode abgeändert:
Code:
/** Links trim */
public static String trimLeft(final String s){
return trim(s, true);
}
/** Rechts trim */
public static String trimRight(final String s){
return trim(s, false);
}
private static String trim(final String s, boolean left){
char[] value = s.toCharArray();
int len = value.length;
int st = 0;
char[] val = value;
if (left){
while ((st < len) && (val[st] <= ' ')) {
st++;
}
}else{
while ((st < len) && (val[len - 1] <= ' ')) {
len--;
}
}
return ((st > 0) || (len < value.length)) ? s.substring(st, len) : s;
}
-
Da ist die ReplaceAll-Methode wesentlich effektiver.
-
@Baldur: was erst noch zu zeigen wäre, ich setze mal ein Krügerl auf die Schleife, Regenechsen sind nicht die schnellsten!
Ansonsten plädiere ich für:
http://docs.spring.io/spring/docs/3....va.lang.String, char)
das ist eine bewährte Komponente aus einem Hunderttausendfach bewährten Framework.
D*B
-
Hallo Ihr Lieben
Bei meinem Programm funktioniert jetzt alles einwandfrei. Hätte nur gerne gewusst wieso wer die Lehrzeichen den variablen hinzufügt. Das dürfte ja eigebltich nicht passieren, oder bin ich da zu naiv???
lg und schöne Feiertage
Steffi
-
Wenn in der Datenbank das Feld als CHAR definiert ist, enthält es immer die Leerzeichen da es eine feste Länge hat.
Nur VARCHAR speichert auch die Länge.
Dann kommt es darauf an, wie die Programme die Informationen speichern.
Denn auch Varchar kann incl. Leerzeichen gepeichert werden, automatisch wird da nichts entfernt.
Similar Threads
-
By synus in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 08-04-03, 13:12
-
By W.Steiner in forum Archiv NEWSblibs
Antworten: 1
Letzter Beitrag: 13-11-02, 10:12
-
By lefthander in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 06-08-02, 14:53
-
By Burgy Zapp in forum NEWSboard Drucker
Antworten: 0
Letzter Beitrag: 08-07-02, 23:44
-
By mott in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 17-11-01, 10:44
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks