Sto tentando di caricare un file csv in un datatable utilizzando oledb.Caricare csv in oleDB e forzare tutti i tipi di dati dedotti alla stringa
Questo non è un problema ma sfortunatamente uno dei campi che sembra numerico ha un valore di stringa in circa il 3% dei campi e quindi non viene popolato.
perché nella conversione di csv in xml non mi interessa davvero dedurre i tipi di dati e semplicemente ho bisogno dei dati in una stringa, dato che posso lanciarlo successivamente in una fase Linq2XMl.
Spero di essere in grado di farlo nella stringa di connessione.
Non voglio copiare semplicemente la tabella, configurarla con nuove colonne con il tipo di dati desiderato e quindi scrivere i dati in essa perché ciò implicherebbe il caricamento del file csv due volte.
qualche idea?
mia stringa di connessione corrente è
Provider = Microsoft.Jet.OLEDB.4.0; Dati Source =" + thefile.DirectoryName + "; estesa Properties = 'text; HDR = Yes; FMT = delimitato'"; ..
Ci scusiamo per il trascinamento di una vecchia domanda, ma sicuramente questo carica il csv ** prima ** esiste un file schema.ini e come tale quando chiami LoadCSV stai caricando di nuovo il tuo datatable con i dati errati? Alla fine finirai per dover chiamare di nuovo loadcsv per utilizzare effettivamente lo schema.ini generato? – DannyT
carico il file CSV per creare il file dello schema, quindi lo carica di nuovo per ottenere i dati.leggi il collegamento all'articolo di microsoft su come funzionano i file dello schema.Il codice qui è solo frammenti delle parti chiave davvero. –
questo sta funzionando per me. Grazie. –