Results 1 to 10 of 10

Thread: ช่วยสอนวิธีใช้ SaveFileDialog ทีครับ

  1. #1
    Junior Member
    Join Date
    Jul 2008
    Posts
    27


    ใครทีเก่งเรื่อง วิชวลเบสิก 2005 ช่วยทีนะครับ

    ช่วยสอนวิธีใช้ SaveFileDialog ทีครับ เอาตั้งแต่ต้นเลยนะครับ จนถึงเซฟไฟล์อะครับ

    พอดีผมจะเอาข้อมูลใน RichTextbox มาเซฟเป็นไฟล์ txt อะครับ

    หรือพอมีวิธีอื่นช่วนสอนทีนะครับ


  2. #2
    Senior Member
    Join Date
    Jul 2004
    Location
    Thailand
    Posts
    211


    Imports System.IO
    Dim cdl As New SaveFileDialog

    cdl.DefaultExt = "txt"
    cdl.Title = "Save Text File"
    cdl.Filter = "Texe File|*.txt"
    cdl.InitialDirectory = Application.StartupPath
    cdl.OverwritePrompt = True

    If cdl.ShowDialog = DialogResult.OK Then
    Dim s As New StreamWriter(cdl.FileName)
    Dim x As String
    Dim z As String
    Dim cr_lf As String = Chr(13) + Chr(10)

    For Each x In RichTextBox1.Lines
    z += x + cr_lf
    Next

    s.Write(z)
    s.Close()

    End If[/b]

  3. #3
    Junior Member
    Join Date
    Jul 2008
    Posts
    27


    รบกวนท่าน neoclassic ช่วยอธิบายคำสั่งนี้หน่อยได้มั้ยครับผม

    cdl.InitialDirectory = Application.StartupPath

    cdl.OverwritePrompt = True

    Dim s As New StreamWriter(cdl.FileName)

    Dim x As String

    Dim z As String

    Dim cr_lf As String = Chr(13) + Chr(10)

    Each x In RichTextBox1.Lines

    z += x + cr_lf

    แล็วก็คำสั่ง cr_lf นี่เหมือนกับ VbCrlf ที่ไว้สำหรับขึ้นบรรทัดใหม่หรือไม่ครับ

  4. #4
    Senior Member
    Join Date
    Jul 2004
    Location
    Thailand
    Posts
    211



    cdl.InitialDirectory = Application.StartupPath
    'กำหนดตำแหน่งแรกเริ่มที่จะ save เปลี่ยนตำแหน่งหรือเอาออกก็ได้
    'เช่น cdl.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.System)
    'จะไปเริ่มที่ system32


    cdl.OverwritePrompt = True 'แจ้งหากไฟล์มีอยู่แล้ว ทำการเตือน


    Dim s As New StreamWriter(cdl.FileName)
    'ตัวแปร string StreamWriter
    Dim x As String
    'ตัวแปร string หา data ทั้งหมด
    Dim z As String
    'ตัวแปร string รวม data ทั้งหมด

    Dim cr_lf As String = Chr(13) + Chr(10) 'เหมือน vbCrLf ทุกอย่างเลย

    Each x In RichTextBox1.Lines 'วน loop หา data ทั้งหมด

    z += x + cr_lf 'data เอาค่ามาต่อๆกัน ทั้งหมด
    เขียนแบบนี้ก็ได้
    'z = z + x + cr_lf
    หรือ
    'z = z + x + vbCrLf


    แล็วก็คำสั่ง cr_lf นี่เหมือนกับ VbCrlf ที่ไว้สำหรับขึ้นบรรทัดใหม่หรือไม่ครับ
    'เหมือน vbCrLf ทุกอย่างเลย เพียงแต่แยกมันออกมาให้เห็นชัดๆ
    [/b]

  5. #5
    Junior Member
    Join Date
    Jul 2008
    Posts
    27


    รบกวนท่าน neoclassic อีกทีครับผม

    ผมได้ทำโค้ดที่ท่านให้มาอะครับไปใส่ไว้ในส่วนของ button1

    เพื่อที่จะเวลากด button1 แล้วมันจะมีหน้าต่างเซฟเด้งขึ้นมา

    เพื่อที่จะให้เลือกที่จะเซฟ แต่บังเอิญว่า พอกดปุ๊ป ไม่มีอะไีรเกิดขึ้นเลยอะครับ

    ไม่มีหน้าต่าง SaveFile เด้งมาอะครับ ไม่ทราบว่าเกิดจากอะไรครับผม

    แล้วก็ ตรงบรรทัด Dim s As New StreamWriter(cdl.FileName)

    มันมีเส้นใต้ยึกยือยึกยือสีน้ำเงินเกิดขึ้นตรง StreamWriter มันเกิดจากอะไรอีกเช่นกันครับ

    รบกวนด้วยนะครับ ^^

  6. #6
    Senior Member
    Join Date
    Oct 2006
    Location
    thailand
    Posts
    182


    ก่อนอื่นผมเปิด Browser ตัวโปรดขึ้นมา หลังจากนั้นเข้าไปที่ Google เพื่อนรัก จากนั้นใส่คำค้นลงไป
    "savefiledialog vb.net" เอาละกด Search เลย .....

    ไม่นานก็เจอเว็บที่ต้องการ และผมก็ได้ Code นี้มา Simple SaveFiledialog

    [code]
    Stream myStream;
    SaveFileDialog saveFileDialog1 = new SaveFileDialog();

    saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
    saveFileDialog1.FilterIndex = 2;
    saveFileDialog1.RestoreDirectory = true;

    if(saveFileDialog1.ShowDialog() == DialogResult.OK)
    {

  7. #7
    Senior Member
    Join Date
    Jul 2004
    Location
    Thailand
    Posts
    211






    ต้อง Imports System.IO ด้วยน้ะ
    ของผมใช้ VB 2008 .Net Framework 3.5 SP 1 ทดลองบน vista sp 1
    คิดว่าไม่น่าต่างกัน 2005 กับ 2008 ถ้า Framework เดียวกันไม่น่ามีปัญหา

  8. #8
    Junior Member
    Join Date
    Jul 2008
    Posts
    27


    ขอบคุณท่าน neoclassic มากครับ

    จริงๆแล้วมันต้องนำมาประยุกต์จริงๆด้วยครับ ^^

    แล้วผมก็เปลี่ยนจาก Richtextbox เป็น Textbox ธรรมดา

    เมื่อคืนนั่งลองทำทั้งคืน ปรากฏว่าได้แล้วครับ

    SaveFileDialog1.FileName = ""
    SaveFileDialog1.DefaultExt = "txt"
    SaveFileDialog1.Title = "Save Script File"
    SaveFileDialog1.Filter = "Sec File (*.sec)|*.sec"
    'SaveFileDialog1.InitialDirectory = Application.StartupPath
    SaveFileDialog1.OverwritePrompt = True

    If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    Dim name As String
    Dim StreamFile As New IO.StreamWriter(SaveFileDialog1.FileName)
    name = TextBox12.Text
    StreamFile.Writeline(name)
    StreamFile.Close()
    'Button7.Enabled = False
    End If
    End Sub


  9. #9
    Junior Member
    Join Date
    Jul 2008
    Posts
    27


    ขอรบกวนถามผู้รู้อีกนิดนึงนะครับว่า

    ถ้าเกิดว่าเราต้องการเซฟเป็นไฟล์ที่เอนโค้ดแบบ UTF-8

    เราต้องเขียนคำสั่งเพิ่มตรงไหนอะครับ


  10. #10


    ขอบคุณท่าน neoclassic มากครับ

    จริงๆแล้วมันต้องนำมาประยุกต์จริงๆด้วยครับ ^^

    แล้วผมก็เปลี่ยนจาก Richtextbox เป็น Textbox ธรรมดา

    เมื่อคืนนั่งลองทำทั้งคืน ปรากฏว่าได้แล้วครับ

    SaveFileDialog1.FileName = ""
    SaveFileDialog1.DefaultExt = "txt"
    SaveFileDialog1.Title = "Save Script File"
    SaveFileDialog1.Filter = "Sec File (*.sec)|*.sec"
    'SaveFileDialog1.InitialDirectory = Application.StartupPath
    SaveFileDialog1.OverwritePrompt = True

    If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    Dim name As String
    Dim StreamFile As New IO.StreamWriter(SaveFileDialog1.FileName)
    name = TextBox12.Text
    StreamFile.Writeline(name)
    StreamFile.Close()
    'Button7.Enabled = False
    End If
    End Sub


    [/b]
    ลองเปลี่ยนเป็น Dim StreamFile As New IO.StreamWriter(SaveFileDialog1.FileName,System.Text.Encoding.UTF8)
    อ้างอิงได้ ที่นี่

Similar Threads

  1. ขอผู้รู้เรื่อง Sub 7 ทีครับ
    By tack999 in forum Newbie / Starter Hacker
    Replies: 2
    Last Post: 09-07-2009, 12:28 PM
  2. ช่วยสอนใช้ โปรแกรม Autoit ทีครับ
    By runzanarak in forum มือใหม่สอบถามปัญหาการใช้งาน
    Replies: 3
    Last Post: 10-06-2009, 12:47 AM
  3. Replies: 4
    Last Post: 23-03-2009, 01:03 PM
  4. ช่วยเขียนโค้ด C++ ทีครับ
    By Black_List in forum C/C++,C#,VC++,MFC,Win32
    Replies: 2
    Last Post: 21-07-2008, 04:32 PM
  5. Replies: 4
    Last Post: 26-11-2007, 04:03 PM

Members who have read this thread : 0

Actions : (View-Readers)

There are no names to display.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •