Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

filedialog

Îåêßíçóå áðü ôï ìÝëïò jodann. Τελευταία δημοσίευση από το μέλος nullvoid στις 07-04-2008, 15:57. Υπάρχουν 13 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  03-04-2008, 05:20 41274

    filedialog

    Καλημερα κ απο μενα..

    Λοιπον θα ηθελα μια βοηθεια εαν εχετε χρονοSmile

    Ξεκινησα να κανω μια εφαρμογη σε visual basic και τα εχω βρει σκουρα..Stick out tongue

    Αυτος ειναι ο κωδικας απο ενα button και ενα opendialog window

    Public Class Form1

        Private Sub Button1_Click(ByVal sender As System.Object, _
           ByVal e As System.EventArgs) Handles Button1.Click
            If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
                Dim sr As New System.IO.StreamReader(OpenFileDialog1.FileName)
                MessageBox.Show(sr.ReadToEnd)
                sr.Close()
            End If
        End Sub

       Private Sub OpenFileDialog1_FileOk(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles OpenFileDialog1.FileOk

        End Sub

    Θελω να κανω το εξης..

    Οταν ο χρηστης κανει open το filedialog και διαλεξει directory τα αρχεια(χωρις extension) που εχει το directory να γραφονται σε ενα .xml αρχειο κατα προτιμηση ή σε  ενα .txt αρχειο εαν ειναι δυσκολο αυτο

    ο λογος του .xml ειναι γιατι θα γινει συνδεση με PHP αρχειο επειτα..

    Ευχαριστω..

  •  03-04-2008, 11:22 41280 σε απάντηση της 41274

    Απ: filedialog

    Δεν είμαι σίγουρος αν το OpenFileDialog θα σου επιλέξει φάκελο, μήπως χρειάζεσαι κάποιο άλλο control;

    Πάντως, εφόσον βρεις τον φάκελο που θέλεις, παίρνεις τα αρχεία που περιέχει με την Directory.GetFiles
    Για να αφαιρέσεις το extension ενός αρχείου: Path.GetFileNameWithoutExtension

    Και μετά χρησιμοποίησε XML Serialization ή XML Dom για να γράψεις σε xml αρχείο τα αποτελέσματα.

  •  03-04-2008, 14:16 41284 σε απάντηση της 41280

    Απ: filedialog

    Ευχαριστω για την απαντηση σουSmile

    ακομα δεν ειμαι σιγουρος για το openfiledialog να σου πω την αληθεια..

    το μονο που θελω ειναι ο χρηστης να κανει επιλογη μονο τον φακελο επειτα να γινει close το dialog και με Button να γινει εξοδος των περιεχομενων σε .xml

  •  03-04-2008, 17:01 41291 σε απάντηση της 41284

    Απ: filedialog

    Έχεις κοιτάξει το FolderBrowserDialog ?
  •  03-04-2008, 22:10 41295 σε απάντηση της 41284

    Απ: filedialog

    Ο nullvoid σου είπε ήδη τί πρέπει να κοιτάξεις. Αυτό που ζητάς δεν έχει σχέση με το OpenFileDialog, αν και το FolderBrowseDialog είναι καλύτερη περίπτωση. Από αυτό θα πάρεις απλά το path που επιλέγει ο χρήστης. Μετά με την Directory.GetFiles ή την κλάση DirectoryInfo θα πάρεις τα περιεχόμενα του directory. Για να γράψεις όμως τα αρχεία σε ένα xml αρχείο θα πρέπει να χρησιμοποιήσεις τις κλάσεις του System.XML ή το DataSet. Στη χειρότερη περίπτωση μπορείς απλά να γράψεις τα tags απευθείας σε ένα text αρχείο με ένα StreamWriter. Θα πρέπει όμως πρώτα να αποφασίσεις τί θα γράψεις στο αρχείο? Το όνομα, το πλήρες path, ημερομηνίες, το μέγεθος?

    Πρέπει να διαβάσεις και να καταλάβεις πως δουλεύει το XML στο .NET πριν γράψεις ένα αρχείο XML.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  03-04-2008, 23:44 41315 σε απάντηση της 41295

    Απ: filedialog

    Ευχαριστω για την απαντηση..

    Ναι φιλε μου ο φιλος nullvoid και ο φιλος JohnL ειχαν δικιο και οι δυο τα καταφερα καλυτερα με το FolderBrowseDialog και επισεις προσθεσα και ενα textbox ωστε ο user να βλεπει το Folder που ειχε διαλεξειBig Smile

    τωρα οσο αναφορα την .xml το ξερω οτι πρεπει να διαβασω πολυCrying

    παντως το format της  xml ειναι καπως ετσι

    <?xml version="1.0" encoding="iso-8859-1" ?>
    <name></name>
    <creationDate></creationDate>
    <author></author>
    <copyright></copyright>
    - <files>
    <filename></filename>
    <filename></filename>
    <filename></filename>
    </files>
    - <files>
    <filename></filename>
    <filename></filename>
    <filename></filename>

  •  04-04-2008, 12:35 41331 σε απάντηση της 41315

    Απ: filedialog

    Ωραία, άρχισε λοιπόν το γερό και προσεχτικό διάβασμα - γιατί τα αγαθά κώποις κτώνται - και ότι απορία συναντήσεις εδώ είμαστε !
  •  06-04-2008, 22:41 41382 σε απάντηση της 41331

    Απ: filedialog

    Μεχρι στιγμης νομιζω καλα τα παω αλλα εχω ενα μικρο προβλημα και θελω την βοηθεια σας για αλλη μια φοραSmile

    αυτος ειναι ο κωδικας απο το folderbrowsedialog..

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Imports System.IO

    Module Module2
    Sub DirToCml(ByVal foldername As String)
    Dim myxml As New Xml.XmlTextWriter("c:\test.xml", System.Text.Encoding.ASCII)
    With myxml
    .WriteStartDocument()
    '.WriteStartElement("Folder")
    .WriteStartElement("Files")
    '.WriteAttributeString("FolderName", foldername)
    .WriteAttributeString("filenames", foldername)
    For Each file As String In IO.Directory.GetFiles(foldername)
    .WriteElementString("File", file)
    Next
    .WriteEndElement()
    .WriteEndDocument()
    End With
    myxml.Close()
    End Sub

    End Module

     

    και αυτος απο το button

    1
    2
    3
    4
    5
    6
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    ' Displays a dialog box that allows the user to select a folder.
    If FolderBrowserDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    DirToCml(FolderBrowserDialog1.SelectedPath)
    End If

    ολα δουλευουν οκ εκτος απο ..

    προσπαθω να παρω τα αρχεια χωρις το extension με το ** GetFileNameWithoutExtension **

    αλλα δεν τα καταφερνω προσπαθω να το ενσωματωσω στο button αλλα δεν δουλευει

    μπορει καποιος με ενα μικρο παραδειγμα να μου δειξει πως να παρω τα αρχεια με το GetFileNameWithoutExtension ?

    ευχαριστω και παλι..Wink

  •  06-04-2008, 23:06 41386 σε απάντηση της 41382

    Απ: filedialog

    Δεν μπορώ να πω ότι καταλαβαίνω τί ρωτάς. Η περιγραφή της GetFileNameWithoutExtension είναι ξεκάθαρη: "Returns the file name of the specified path string without the extension.". Με άλλα λόγια, του δίνεις το πλήρες path ενός αρχείου και σου επιστρέφειο μόνο το Filename του αρχείου χωρίς extension. Μήπως νομίζεις ότι με αυτή θα πάρεις όλα τα αρχεία? Γι αυτή τη δουλειά είναι η GetFiles.

    Και για τις δύο μεθόδους το documentation περιέχει αρκετά παραδείγματα. Υποψιάζομαι ότι δεν διαβάζεις το documentation και προσπαθείς να δεις ποιά μέθοδος σου κάνει από το όνομα και μόνο. Τα πράγματα θα γίνουν πολύ ευκολότερα αν χρησιμοποιήσεις το documentation.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  07-04-2008, 00:11 41388 σε απάντηση της 41386

    Απ: filedialog

    Φιλε Παναγιωτη με παρεξηγησες..Indifferent

    Ειπα οτι ο κωδικας δουλευει και μαλλον εγω ισως δεν τα ειπα σωστα..

    ο κωδικας ποιο πανω μου δινει αυτο το αποτελεσμα στο xml αρχειο

    <?xml version="1.0" encoding="Windows-1252" ?>
    - <file filename="C:\Program Files\Internet Explorer">
    <Filename>C:\Program Files\Internet Explorer\hmmapi.dll</Filename>
    <Filename>C:\Program Files\Internet Explorer\iedw.exe</Filename>
    <Filename>C:\Program Files\Internet Explorer\ieinstal.exe</Filename>
    <Filename>C:\Program Files\Internet Explorer\iessetup.ceb</Filename>
    <Filename>C:\Program Files\Internet Explorer\iessetup.dll</Filename>
    <Filename>C:\Program Files\Internet Explorer\ieuser.exe</Filename>
    <Filename>C:\Program Files\Internet Explorer\iexplore.exe</Filename>
    <Filename>C:\Program Files\Internet Explorer\sqmapi.dll</Filename>
    </file>

    εγω προσπαθω να παρω αυτο το ζητουμενο..

    <?xml version="1.0" encoding="Windows-1252" ?>
    - <file filename="C:\Program Files\Internet Explorer">
    <Filename>hmmapi</Filename>
    <Filename>iedw</Filename>
    <Filename>ieinstal</Filename>
    <Filename>iessetup</Filename>
    <Filename>iessetup</Filename>
    <Filename>ieuser</Filename>
    <Filename>iexplore</Filename>
    <Filename>sqmapil</Filename>
    </file>

    εκει προσπαθω να καταλαβω σε τι ειμαι λαθος και γιατι παιρνω μονο τα directory χωρις subdirectory..

    Συγνωμη εαν γινομαι κουραστικος αλλα πιστεψε με διαβαζω αρκετα ..

  •  07-04-2008, 11:59 41396 σε απάντηση της 41388

    Απ: filedialog

    Δηλαδή αυτό:

    For Each file As String In IO.Directory.GetFiles(foldername)
    .WriteElementString("File", Path.GetFileNameWithoutExtension(file))
    Next


    δεν σου παίζει;
  •  07-04-2008, 15:16 41398 σε απάντηση της 41396

    Απ: filedialog

    nullvoid:
    Δηλαδή αυτό:

    For Each file As String In IO.Directory.GetFiles(foldername)
    .WriteElementString("File", Path.GetFileNameWithoutExtension(file))
    Next



    δεν σου παίζει;

    Φιλε nullvoid παιζει μια χαρα και σε ευχαριστω το μονο προβλημα που εχω εαν και εχω ψαξει ολο το msdn και καμια 10 βιβλια που εχω ειναι οτι δεν μπορω να παρω τα subdirectory..

    αφου παιρνω το path

    1
    2
    3
    4
    5
    6
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    ' Displays a dialog box that allows the user to select a folder.
    If FolderBrowserDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    'DirToCml(FolderBrowserDialog1.FileName)
    DirToxml(FolderBrowserDialog1.SelectedPath)

    δοκιμασα και με το For Each file As String In IO.Directory.GetFileSystemEntries

    αλλα και παλι παιρνω μονο τα root directory χωρις τα sub.

    θα δοκιμασω παλι σημερα..

    και παλι σε ευχαριστω για την απαντηση σου.

  •  07-04-2008, 15:35 41401 σε απάντηση της 41398

    Απ: filedialog

    Directory.GetDirectories?

    Υποψιάζομαι ότι κοιτάς πολύ βιαστικά το documentation. Η κλάση Directories περιέχει τις μεθόδους που θέλεις και μπορείς να μαντέψεις από το όνομα τους τί κάνει η κάθε μία. Το documentation της κάθε μεθόδου περιέχει αρκετά καλά παραδείγματα. Δεν χρειάζεται να διαβάσεις 10 βιβλία, κοίτα απλά το documentation της κάθε μεθόδου.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  07-04-2008, 15:57 41403 σε απάντηση της 41401

    Απ: filedialog

    συμφωνώ με τον Παναγιώτη και πιστεύω ότι αρκεί να κάτσεις με την ησυχία σου και να διαβάσεις αργά αργά την κλάση Directory, την Path, την File και εννοώ να διαβάσεις όλες τις μεθόδους που έχουν για να έχεις γνώση των μεθόδων που σου παρέχονται.
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems