Connessione a DB con file .dat come DataSource

lunedì 14 marzo 2005 - 17.16

gianp Profilo | Junior Member

Salve, io ho bisogno di fare una connessione di tipo OLEDB in cui il datasource è un file .dat.

Le istruzioni che uso sono le seguenti:
------------------------------------------------------------
sorcestr="C:\\RFI File System\\NA00\\Avvisi\\I1\\L546_IQB _dic_04.dat\"

String sConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source="+sorcestr+";" + "Extended Properties=text;";

OleDbConnection objConn = new OleDbConnection(sConnectionString);

objConn.Open();
---------------------------------------------------------

appena il programma passa dall'istruzione objConn.Open(); da quessta eccezione:

"C:\RFI File System\NA00\Avvisi\I1\L546_IQB _dic_04.dat\" non è un percorso valido. Assicurarsi che il nome del percorso sia corretto e di essere collegati al server in cui si trova il file."

Vi assicuro che la path è corretta !!!
Anche perchè ho fatto un prova connettendomi alla versione excel del file .dat e mi funziona.
Per favore aiutatemi.

Cteniza Profilo | Guru

>sorcestr="C:\\RFI File System\\NA00\\Avvisi\\I1\\L546_IQB _dic_04.dat\"

Perchè non provi con:
sorcestr="C:\\RFI File System\\NA00\\Avvisi\\I1\\L546_IQB _dic_04.dat"
Oppure con:
sorcestr= @"C:\RFI File System\NA00\Avvisi\I1\L546_IQB _dic_04.dat"

gianp Profilo | Junior Member

Grazie, ma la soluzione è un'altra. In realtà la sourcestr corretta è
sorcestr="C:\\RFI File System\\NA00\\Avvisi\\I1\\

e poi ci si rifersce al file come fosse una tabella.
alla fine i file con cui ho lavorato sono dei .csv e non dei .dat ma credo ke il discorso non cambi.
Inoltre vi suggerisco un altra cosa: se i file .csv hanno un certo carattere come delimitatore, (supponiamo sia il pipe "|"), costruite un file di nome schema.ini
e dentro scrivete

[nomefile.csv]
Format=Delimited(|)

Mettete il file .ini nella stessa cartella del .csv e il gioco è fatto

Un'altra cosa se il separatore è il tabulato non scrivete
Format=Delimited(\t)
ma proprio
Format=Delimited( ) digitando tab tre le parentesi tonde

Cteniza Profilo | Guru

Grazie, ma eri tu che avevi dei problemi con il file.
Se dicevi subito che era un file delimitato ti suggerivo di leggere il mio blog sull'argomento:

Apertura di un file di testo e creazione di un DataSet con ADO.NET e OLEDB
http://community.visual-basic.it/lucianob/archive/2005/02/19/5824.aspx

gianp Profilo | Junior Member

Non ci crederai ma cercando su internet mi sono ibattuto proprio sul sito ke mi hai suggerito ed è li ke ho trovato la soluzione.
Grazie di tutto.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5