Come far aprire automaticamente file cvs

di il
8 risposte

Come far aprire automaticamente file cvs

Salve all'apertura di un form vorrei far aprire in modo automatico un file cvs specifico presente nella dir del programma, usato per riempire una specifica datagriview.
Attualmente, le istruzioni inserite devo andare a caricare manualmente il file.
  private void comuni_f_Load(object sender, EventArgs e)
        {
            try
            {
                using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "CSV|*.csv", ValidateNames = true, Multiselect = false })
                {
                    if (ofd.ShowDialog() == DialogResult.OK)
                        dati_dgv.DataSource = ReadCsv(ofd.FileName);

                    riemp_combox();
                    imp_caselle();
                    csv_colonne_ric_cb.SelectedIndex = 0;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }


chiedo cortesemente aiuto su come poter modificare il codice in modo da far leggere direttamente il file comuni.cvs , presente nella dir del programma, eventualmente con la possibilità di avere l'apertura della finestra di selezione file nel caso in cui non sia presente nelle dir del programma

grazie anticipate

8 Risposte

  • Re: Come far aprire automaticamente file cvs

    Se conosci il nome del file, ovviamente, devi indicarlo in

    ReadCsv("....")

    senza usare la OpenFileDialog
  • Re: Come far aprire automaticamente file cvs

    Grazie per le indicazioni ma come faccio ad inserire il solo percorso relativo (quindi solo quello che si trova nella cartella principale del programma), senza dover inserire per esteso la posizione del file es. c:\programmi\prova\comune.csv?

    quello che vorrei inserire è solo comune.csv in modo che il file lo vada a prendere comunque purchè presente nella dir "prova", che può essere installata anche altrove e non per forza in quello indicato ad esempio sopra
  • Re: Come far aprire automaticamente file cvs

    Https://www.morgantechspace.com/2015/07/c-get-executing-assembly-folder-path.html
  • Re: Come far aprire automaticamente file cvs

    minis ha scritto:


    ...
    quello che vorrei inserire è solo comune.csv in modo che il file lo vada a prendere comunque purchè presente nella dir "prova", che può essere installata anche altrove e non per forza in quello indicato ad esempio sopra
    Vuoi dire che il tuo file .csv sta dove è adesso l'eseguibile? Oppure non ho capito.
  • Re: Come far aprire automaticamente file cvs

    oregon ha scritto:


    minis ha scritto:


    ...
    quello che vorrei inserire è solo comune.csv in modo che il file lo vada a prendere comunque purchè presente nella dir "prova", che può essere installata anche altrove e non per forza in quello indicato ad esempio sopra
    Vuoi dire che il tuo file .csv sta dove è adesso l'eseguibile? Oppure non ho capito.
    Si esatto il mio file csv sta ora dove si trova l'eseguibile e vorrei lasciarlo là. Ma se copio tutta la cartella dove è presente anche l'eseguibile ed il file csv, in un altra posizione, vorrei che il file csv si aprisse comunque.
  • Re: Come far aprire automaticamente file cvs

    Non è la migliore posizione, esistono cartelle apposite per i file dei dati delle applicazioni. Comunque, basta usare

    ReadCsv(Application.StartupPath.ToString() + "\comune.csv")
  • Re: Come far aprire automaticamente file cvs

    Il codice del link che ti ho postato ti permette di recuperare sempre il path dell'eseguibile,lo fà dinamicamente quindi se sposti tutto ,compreso l'eseguibile, cambierà anche il path,spostare i file eseguibili da dove sono installati andrebbe evitato a meno di ragioni specifiche, è tutto chiaro?
  • Re: Come far aprire automaticamente file cvs

    Grazie con le indicazioni di oregon ho risolto.
    Il Programma è praticamente costituito da un solo eseguibile e qualche file xls e csv per le tabelle che vengono richiamate, quindi non ha installazione.
    Comunque grazie anche a gian82, il linck lo terrò in considerazione.
Devi accedere o registrarti per scrivere nel forum
8 risposte