French Csv

Thaca

Member
Licensed User
Longtime User
Bonjour,
J'ai une base de données que je veux exporter en CVS. J'utilise la routine suivante :
Sub ExportToCSV

Dim Answ2
Dim Query1 As String

Query1 = "SELECT Jour, Date, Midi, soir FROM menus1 ORDER by Date "
Answ2 = Msgbox2("Sauvegarder en CSV ?","", "Oui", "", "Non", Null)
If Answ2 = DialogResponse.POSITIVE Then
lstTable = DBUtils.ExecuteMemoryTable (SQL1, Query1, Null, 0)

Dim su As StringUtils

'su.SaveCSV(File.DirDefaultExternal, "menus.csv", "," , lstTable)

End If
End Sub

Tout se passe bien mais je récupère un fichier avec des problèmes sur les caractères accentués. J'ai bien compris qu'il fallait que j'encode mon fichier CSV en UTF8 mais comment fait-on ? quelle est la syntaxe ?
 

klaus

Expert
Licensed User
Longtime User
La manière d'exporter le fichier csv dépend avec quel logiciel tu veux le lire après coup.
Si tu veux le récupérer avec Ecxel tu dois l'exporter avec Windows-1252 et non UTF-8.
La CodePage d'Android est UTF-8 donc le fichier est exporté en UTF-8.
Parcontre Excel ne reconnait pas UTF-8 mais seulement Windows-1252.
SaveCSV et SaveCSV2 n'exportent qu'en UTF-8.
Il ne te reste malheureusement que de le faire toi même en composant chaque ligne en String et écrire ces lignes avec TextWriter que tu initialises avec Initialize2(OutputStream As OutputStream, Encoding As String).
Encoding = "Windows-1252"

Meilleures salutations.
 

Thaca

Member
Licensed User
Longtime User
Merci pour ta réponse rapide comme toujours.
Mon soucis n'est pas de renvoyer le fichier sur window mais je l'envoie par mail pour pouvoir le consulter sur mon iphone. Pourtant il semble que IOS fonctionne aussi avec UTF8. Je ne comprends pas...
Par contre j'aurai besoin également pour un autre projet de transférer un fichier sur excel et je garde précieusement tes explications qui me seront bien utiles le temps venu.
Merci
 
Top