Download the free trial version
Basic4android Video
Features
Tutorials and manuals
Showcase
Screenshots

Go Back   Android Development Forum - Basic4android > Foreign Languages > German Forum
Documentation Wiki Register Members List B4P Search Today's Posts Mark Forums Read

CSV-Datei Format Problem bei Import !!!

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 09-03-2010, 10:43 AM
Basic4ppc Veteran
 
Join Date: Jul 2008
Location: Germany
Posts: 341
Awards Showcase
Beta Tester 
Total Awards: 1
Default CSV-Datei Format Problem bei Import !!!

Hi, ich möchte eine CSV-Datei die aus "Spritmonitor.de" erstellt wurde
in mein Programm einlesen, wobei immer der Fehler "Columns number and type do not match data file"

Wenn ich die CSV-Datei in Excel öffne sieht sie ganu ok aus, wenn ich sie
unter Excel dann einfach wieder speichere, kann sie problemlos in mein Programm eingelesen werden.

Im Anhang die Originaldatei umbenannt in .txt .

Vielleicht weiss jemand eine Lösung wie ich die Datei direkt einlesen kann,
ohne Umweg über Excel, wäre super !!
Attached Files
File Type: txt 416045_fuelingsor.csv.txt (651 Bytes, 8 views)
__________________
Gruß Paulsche

Samsung Galaxy S2
Reply With Quote
  #2 (permalink)  
Old 09-03-2010, 12:37 PM
specci48's Avatar
Basic4ppc Expert
 
Join Date: Apr 2007
Location: Germany
Posts: 993
Awards Showcase
Beta Tester Forum Contributer 
Total Awards: 2
Default

Hallo Paulsche,

kannst Du den Export der Datei aus "Spritmonitor.de" irgendwie beeinflussen?

Das Problem mit der Datei ist folgendes:
Am Ende einer Zeile erwartet LoadCSV die beiden "Zeichen" Line Feed (Hex 0A) und Carriage Return (Hex 0D). Im Exportfile ist aber nur Line Feed (Hex 0A) enthalten.
Dadurch erkennt LoadCSV den Zeilenumbruch nicht (korrekt) und liest die gesamten Daten als eine einzelne Zeile ein!

Am Besten sieht man dies mit einem Hex-Editor. Aber auch, wenn Du die Originaldatei mit Notepad öffnest, erscheint am Ende jeder Zeile jeweils ein Kästchen. Wenn man dieses Kästchen löscht, im Notepad dann einen "sauberen" Zeilenumbruch einfügt und neu speichert, dann läßt sich die Datei auch problemlos einlesen.

Eine andere Lösung wäre, die .csv Datei beim Programmstart um die fehlenden Carriage Return (Hex 0D) zu ergänzen und erst dann in die Tabelle einzulesen.


Gruß
specci48
Reply With Quote
  #3 (permalink)  
Old 09-03-2010, 12:57 PM
klaus's Avatar
Basic4ppc Expert
 
Join Date: Oct 2007
Location: Fully, Switzerland
Posts: 3,827
Awards Showcase
Forum Contributer Beta Tester Competition Winner 
Total Awards: 3
Default

Hallo Paulsche,

Wie specci48 es schon erklärt hat fehlt ein CarriageReturn Zeichen.
Wenn man die Originaldatei mit einer mit Excel gespeicherte Datei vergleicht sieht man auch dass in der Originaldatei alle Strings mit Anführungszeichen umrandet sind was nicht der Exceldatei der Fall ist.
Beiliegend ein Programm das die Originaldatei in eine Stringvariable liest,die Anführungszeichen löscht und das CarriageReturn Zeichen anfügt, und wieder speichert.

Beste Grüsse.
Attached Files
File Type: sbp TestCSV.sbp (852 Bytes, 13 views)
__________________
Klaus
Switzerland

Last edited by klaus : 09-03-2010 at 01:02 PM.
Reply With Quote
  #4 (permalink)  
Old 09-03-2010, 12:59 PM
Basic4ppc Veteran
 
Join Date: Jul 2008
Location: Germany
Posts: 341
Awards Showcase
Beta Tester 
Total Awards: 1
Default

Quote:
Originally Posted by specci48 View Post
Hallo Paulsche,

kannst Du den Export der Datei aus "Spritmonitor.de" irgendwie beeinflussen?

Das Problem mit der Datei ist folgendes:
Am Ende einer Zeile erwartet LoadCSV die beiden "Zeichen" Line Feed (Hex 0A) und Carriage Return (Hex 0D). Im Exportfile ist aber nur Line Feed (Hex 0A) enthalten.
Dadurch erkennt LoadCSV den Zeilenumbruch nicht (korrekt) und liest die gesamten Daten als eine einzelne Zeile ein!

Am Besten sieht man dies mit einem Hex-Editor. Aber auch, wenn Du die Originaldatei mit Notepad öffnest, erscheint am Ende jeder Zeile jeweils ein Kästchen. Wenn man dieses Kästchen löscht, im Notepad dann einen "sauberen" Zeilenumbruch einfügt und neu speichert, dann läßt sich die Datei auch problemlos einlesen.

Eine andere Lösung wäre, die .csv Datei beim Programmstart um die fehlenden Carriage Return (Hex 0D) zu ergänzen und erst dann in die Tabelle einzulesen.


Gruß
specci48
Hi Specci48, danke für die ausführliche Erklärung,
wie könnte ich beim Programmstart die fehlenden Carriage Returns ergänzen, hast Du mir da nen Tipp ?
Den Export aus Spritmonitor kann man leider nicht beeinflussen :-(
__________________
Gruß Paulsche

Samsung Galaxy S2
Reply With Quote
  #5 (permalink)  
Old 09-03-2010, 02:44 PM
specci48's Avatar
Basic4ppc Expert
 
Join Date: Apr 2007
Location: Germany
Posts: 993
Awards Showcase
Beta Tester Forum Contributer 
Total Awards: 2
Default

Quote:
Originally Posted by Paulsche View Post
...hast Du mir da nen Tipp ?
Na klar, nimm das Beispiel von Klaus!


Gruß
specci48
Reply With Quote
  #6 (permalink)  
Old 09-03-2010, 05:02 PM
Basic4ppc Veteran
 
Join Date: Jul 2008
Location: Germany
Posts: 341
Awards Showcase
Beta Tester 
Total Awards: 1
Default

Hallo Klaus, Hallo Specci48,

vielen Dank für die super Schnelle Hilfe,
klappt jetzt prima, super

Zur Info:

Musste folgendes ändern,

TableText=StrReplace(TableText,Chr(10),Chr(10)&Chr (13))

in

TableText=StrReplace(TableText,Chr(10),Chr(13)&Chr(10))
__________________
Gruß Paulsche

Samsung Galaxy S2
Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Date format problem mozaharul Questions (Windows Mobile) 1 01-29-2010 12:22 PM
Format problem ArturAs Questions (Windows Mobile) 2 03-30-2009 12:18 PM
Problem with CSV format ceaser Questions (Windows Mobile) 8 02-10-2009 04:38 AM
Treeview in CVS-Datei und wieder zurück mamuen German Forum 6 04-24-2008 12:44 PM
Date format problem Scubaticus Questions (Windows Mobile) 10 07-03-2007 06:32 PM


All times are GMT. The time now is 03:23 AM.


Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0