Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Muecke Gast
|
Verfasst am: 03.01.2014, 15:25 Titel: Datei ENCODING finden |
|
|
Hallo miteinander,
ich bin gerade Datei eine CSV Datei zu öffnen
ich überprüfe zu erst ob die Datei existiert bevor ich sie Öffne
beim Öffnen stelle ich mir nur die Frage wie ich sie Öffnen soll
Code: | ' ENCODING
' ASCII
' UTF-8
' UTF-16
' UTF-32 |
gibt es eine Möglichkeit das auszulesen?
in was die Datei gespeichert wurde?
denn wenn ich das Falsche angebe kommt keine Ausgabe auf dem Monitor
Das ist mein bisheriger Code:
Code: | #Include "file.bi" ' wird benötigt um Dateiexistenz zu prüfen
Dim Zeile As String, DNr As Integer = FreeFile ' Angaben für das Datei Öffnen
Dim filename AS String ' Daten File für die 3D Daten
filename = "C:\Users\00\Desktop\Data\replay_knete.csv" ' Datei Pfad & Name für die 3D Daten
' Datei Prüfen auf Existenz
If FileExists(filename) Then
Print "Datei gefunden: " & filename
Else
Print "Datei nicht gefunden: " & filename
Print ""
Print "***********************************************************************
Print "**** bitte prüfen Sie die Angaben 'filename =' ****"
Print "***********************************************************************
Print "Ende mit beliebiger Taste"
Sleep
End
EndIf
' Datei Öffnen und die erste zeile ausgeben
Open filename FOR INPUT ENCODING "ASCII" AS #DNr
' ENCODING
' ASCII
' UTF-8
' UTF-16
' UTF-32
LINE INPUT #DNr, Zeile
PRINT Zeile
CLOSE #DNr
Slee |
|
|
Nach oben |
|
|
HorstD
Anmeldungsdatum: 01.11.2007 Beiträge: 107
|
Verfasst am: 03.01.2014, 17:38 Titel: |
|
|
Wenn Die Datei einen BOM hat, kannst du den vorher auslesen.
Code: |
DIM BOM AS STRING
...
...
DNr = FreeFile
Open filename FOR INPUT AS #DNr
Zeile = Input(4, #DNr)
Close #DNr
If Left(Zeile, 3) = Chr(&hEF) & Chr(&hBB) & Chr(&hBF) Then
BOM = "UTF-8"
ElseIf LEFT(Zeile, 4) = Chr(&hFF) & Chr(&hFE) & CHR(0) & Chr(0) Then
BOM = "UTF-32"
ElseIf LEFT(Zeile, 2) = Chr(&hFF) & Chr(&hFE) Then
BOM = "UTF-16"
Else ' Kein BOM
BOM = "ASCII"
End If
' Datei Öffnen und die erste zeile ausgeben
DNr = FreeFile
Open filename FOR INPUT ENCODING BOM AS #DNr
...
|
|
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 03.01.2014, 17:59 Titel: |
|
|
Hallo,
ich könnte mir vorstellen, dass deine Zeilenkamera immer das gleiche Encoding schreibt, sodass man das nicht jedes Mal als "Überraschung" erst zur Laufzeit herausfinden muss. Und wahrscheinlich handelt es sich dabei ja um ganz normales US-ASCII. Oder schreibt die Kamera auch chinesische / kyrillische / ... Schriftzeichen?
Code: | OPEN "MeineDatei.CSV" FOR INPUT AS #DNr |
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
|
Muecke Gast
|
Verfasst am: 03.01.2014, 19:25 Titel: |
|
|
Cool, werde das direkt ausprobieren Danke.
Das ist richtig meine Zeilenkamera wird mir immer das Selbe Format ausgeben hier wird nicht viel an Überraschungen vorkommen , habe nur gemerkt das meine Programmierkenntnisse sehr eingeschlafen sind und ich möchte von Anfang an gleich Fehler ausschließen und auch meinen Wissensstand wider auffrischen. |
|
Nach oben |
|
|
|