Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > .NET Framework > Forum > ช่วยหน่อยครับ asp.net กับการ import csv ไฟล์ครับ คือผมทำตามนี้แล้วอ่ะครับ


 

[.NET] ช่วยหน่อยครับ asp.net กับการ import csv ไฟล์ครับ คือผมทำตามนี้แล้วอ่ะครับ

 
Topic : 042515

Guest



คือผมทำตามนี้แล้วอ่ะครับ https://www.thaicreate.com/asp.net/asp.net-read-csv-files.html
แต่เวลาที่มีภาษาไทยแล้วมันเป็นภาษาต่างด้าวอ่ะครับ ช่วยทีนะครับ นี่โค๊ดนะครับ

Code (VB.NET)
001.Protected Sub Btnimp_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Btnimp.Click
002.       Dim CurrentFileName As String
003.       Dim CurrentPath As String
004.       Dim dt1 As String
005.       Dim dt2 As String
006. 
007.       CurrentFileName = myFile1.FileName
008.       If (Path.GetExtension(CurrentFileName).ToLower <> ".csv") Then
009.           ClientScript.RegisterStartupScript(Me.GetType(), "ShowAlert", ShowAlert("Error : Please Insert Excel File(.csv)"))
010.           Exit Sub
011.       End If
012.       If Not IsNothing(myFile1.PostedFile) Then
013. 
014.           Dim UlFileName As String
015.           Dim i As Integer
016. 
017.           UlFileName = "Upload/" & System.IO.Path.GetFileName(myFile1.ToString)
018. 
019.           '*** Save Images ***'
020.           myFile1.PostedFile.SaveAs(Server.MapPath(UlFileName))
021. 
022.       End If
023. 
024. 
025.       Dim strPath As String = "csv/"
026.       Dim dt As New System.Data.DataTable
027. 
028.       If Me.myFile1.HasFile Then
029.           Me.myFile1.SaveAs(Server.MapPath(strPath & myFile1.FileName))
030. 
031.           '*** Read CSV to DataTable ***'         
032.           dt = CsvCreateDataTable(strPath, Trim(myFile1.FileName))
033. 
034.           '*** Insert to Database ***'           
035.           InsertToDatabase(dt)
036.       End If
037.   End Sub
038. 
039. Function CsvCreateDataTable(ByVal strPath, ByVal strFilesName) As DataTable
040. 
041.       Dim objConn As New OleDbConnection
042.       Dim dtAdapter As OleDbDataAdapter
043.       Dim dt As New DataTable
044.       Dim dr As System.Data.DataRow
045.       Dim i As Integer
046.       Dim strConnString As String
047. 
048. 
049.       '*** Column ***'
050.       dt.Columns.Add("Serial")
051.       dt.Columns.Add("Model")
052.       dt.Columns.Add("Name")
053.       dt.Columns.Add("User")
054.       dt.Columns.Add("Type")
055.       dt.Columns.Add("EMPLOYEEID")
056.       dt.Columns.Add("DEPTCODE")
057.       dt.Columns.Add("DEPTNAME")
058.       dt.Columns.Add("TEL")
059.       dt.Columns.Add("INVOICEDATE")
060.       dt.Columns.Add("EXPIRE")
061.       dt.Columns.Add("Brand")
062.       dt.Columns.Add("Mail")
063.       dt.Columns.Add("Fac")
064.       dt.Columns.Add("Location")
065.       dt.Columns.Add("Team")
066.       dt.Columns.Add("Vendor_code")
067.       dt.Columns.Add("Vendor_name")
068. 
069.       Dim StrWer As StreamReader
070.       Dim strLine As String
071.       StrWer = File.OpenText(Server.MapPath(strPath & strFilesName))
072.       Do Until StrWer.EndOfStream
073.           strLine = StrWer.ReadLine()
074.           If Trim(strLine) <> "" Then
075.               '*** Rows ***'
076.               If Mid(strLine, 1, 6) <> "Serial" Then
077.                   dr = dt.NewRow
078.                   dr("Serial") = Split(strLine, ",")(0)
079.                   dr("Model") = Split(strLine, ",")(1)
080.                   dr("Name") = Split(strLine, ",")(2)
081.                   dr("User") = Split(strLine, ",")(3)
082.                   dr("Type") = Split(strLine, ",")(4)
083.                   dr("EMPLOYEEID") = Split(strLine, ",")(5)
084.                   dr("DEPTCODE") = Split(strLine, ",")(6)
085.                   dr("DEPTNAME") = Split(strLine, ",")(7)
086.                   dr("TEL") = Split(strLine, ",")(8)
087.                   dr("INVOICEDATE") = Split(strLine, ",")(9)
088.                   dr("EXPIRE") = Split(strLine, ",")(10)
089.                   dr("Brand") = Split(strLine, ",")(11)
090.                   dr("Mail") = Split(strLine, ",")(12)
091.                   dr("Fac") = Split(strLine, ",")(13)
092.                   dr("Location") = Split(strLine, ",")(14)
093.                   dr("Team") = Split(strLine, ",")(15)
094.                   dr("Vendor_code") = Split(strLine, ",")(16)
095.                   dr("Vendor_name") = Split(strLine, ",")(17)
096.                   dt.Rows.Add(dr)
097.               End If
098. 
099.           End If
100.       Loop
101.       StrWer.Close()
102. 
103.       Return dt '*** Return DataTable ***




Tag : - - - -

Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-05-07 09:41:21 By : kawin View : 3505 Reply : 8
 

 

No. 1

Guest


ดูตรงหลัง ATITAYA อ่ะครับ มันเป็นภาษาต่างด้าวอ่ะครับ ช่วยหน่อยนะครับ ขอบคุณครับ
error ????????
Date : 2010-05-07 15:45:41 By : kawin
 

 

No. 2



โพสกระทู้ ( 3,144 )
บทความ ( 1 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


Book1.csv
เวลา,รายการ
4:50,ควอนตั้ม เทเลวิชั่น
5:15,เช้า-ข่าว 7 สี
6:00,การ์ตูนชุด BUBU CHACHA เพื่อนรักสี่ล้อ
6:25,รายการ การแพทย์ก้าวหน้า
6:30,รายการ ตูนดิสนีย์
8:05,รายการ มรดกโลก
8:10,ข่าวเด็ด 7 สี
8:15,ละคร ตุ๊กตาทอง (on-air)
9:10,รายการ เสน่ห์กีฬา
9:15,"ยอดภาพยนตร์นานาชาติ เสนอ ภ.เกาหลีชุด ""ลิขิตรักบนรอยแค้น"" (TIME BETWEEN DOG AND WOLF) ตอนแรก"
11:10,ข่าวเด็ด 7 สี
11:15,ละคร ตลาดไม่ขาดรัก
11:55,รายการฉลาด รอบรั้ว
12:00,"7 สี คอนเสิร์ต พบกับ ""ฝน ธนสุนทร / สาวมาด เมกะแดนซ์ / ปัญญา กตัญญู / โจ พรคเนศ /ราชสีห์มา เพชรดาราพันธ์ 2007"""
12:55,ข่าวเด็ด 7 สี
13:00,ละคร สูตรรักกับดักหัวใจ
13:45,รายการ คดีเด็ด
14:40,รายการ ทางเลือกทางหลวง
14:45,รายการปลดหนี้
15:10,ข่าวเด็ด 7 สี
15:15,รายการ ฟ้ามีตา
15:55,รายการ แชมเปียน คลินิก
16:00,รายการจ้อจี้
16:40,รายการเลือกได้เลือกดี
16:43,รายการก้าวไกล
16:45,รายการ เส้นทางเศรษฐี
16:50,รายการ ถ้อยธรรมพระราชดำรัส
16:55,รายการ รักษ์สุขภาพ
17:30,ข่าวภาคค่ำ (ช่วงที่ 1)
18:00,รายการ หลานปู่กู้อีจู้
18:25,รายการ ครูวิทย์ นักคิด
18:27,รายการ พลังจิ๋ว รักษ์โลก
18:28,รายการหนึ่งในร้อย
18:30,ละคร มนต์รักสายฟ้าแลบ
19:30,ข่าวภาคค่ำ (ช่วงที่ 2)
20:15,ละคร หงส์ฟ้า
22:15,ข่าวเด็ด 7 สี
22:30,"บิ๊กซินีม่า โปรแกรมทอง เสนอ ภ.ฝรั่ง ""น้ำหนัก รัก / แค้น / ศรัทธา"" (21 GRAMS)"
0:25,ข่าวภาคดึก
0:30,รายการ แซทโซน โซนมันวันเสาร์
1:30,เด็ดข่าวดึก
1:45,รายการพิเศษ เบื้องหลังละคร นักฆ่าขนตางอน (RERUN)
2:10,"WORLD CINEMA เสนอ ภ.เกาหลี ""2 เทพบุตรสะดุดรักยัยเฉิ่ม"" (ROMANCE OF THEIR OWN)"
3:30,ข่าวเด็ด 7 สี

ReadCsv.aspx
01.<%@ Page Language="VB" AutoEventWireup="true" CodeFile="ReadCsv.aspx.vb" Inherits="ReadCsv" %>
02. 
03.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
04. 
06.<head runat="server">
07.    <title></title>
08.</head>
09.<body>
10.    <form id="form1" runat="server">
11.    <div>
12.        <asp:Button ID="ImportButton" runat="server" Text="Import" />
13.        <br />
14.        <br />
15.        <asp:GridView ID="GridView1" runat="server">
16.        </asp:GridView>
17.    </div>
18.    </form>
19.</body>
20.</html>

ReadCsv.aspx.vb
01.Imports System
02.Imports System.Collections.Generic
03.Imports System.Linq
04.Imports System.Web
05.Imports System.Web.UI
06.Imports System.Web.UI.WebControls
07. 
08.Imports System.Data
09.Imports System.Data.OleDb
10.Imports System.Data.SqlClient
11. 
12.Public Partial Class ReadCsv
13.    Inherits System.Web.UI.Page
14. 
15.    Private dataTable As DataTable
16.     
17.    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
18.        dataTable = New DataTable()
19.        dataTable = ReadData()
20.         
21.        GridView1.DataSource = dataTable
22.        AddHandler GridView1.RowDataBound, AddressOf GridView1_RowDataBound
23.        GridView1.DataBind()
24.         
25.        AddHandler ImportButton.Click, AddressOf ImportButton_Click
26.    End Sub
27.     
28.    Protected Function ReadData() As DataTable
29.        ' อ่านข้อมูลจาก csv มาเก็บไว้ใน DataTable 
30.        Dim oleDbConnectionString As String = String.Format("Provider=Microsoft.Jet.OLEDB.4.0; Data Source={0};Extended Properties='TEXT;HDR=Yes;FMT=Delimited;Format=Delimited(,)'", Page.Server.MapPath("~/"))
31.        Dim oleDbConnection As New OleDbConnection(oleDbConnectionString)
32.         
33.        Dim oleDbCommandString As String = "SELECT [เวลา] As [OnAirTime], [รายการ] As [Schedule] FROM [Book1.csv]"
34.        Dim oleDbCommand As New OleDbCommand(oleDbCommandString, oleDbConnection)
35.         
36.        Dim Dt As New DataTable()
37.         
38.        Dim dataAdapter As New OleDbDataAdapter()
39.        dataAdapter.SelectCommand = oleDbCommand
40.        dataAdapter.Fill(Dt)
41.         
42.        Return Dt
43.    End Function
44.     
45.    Protected Sub ImportButton_Click(ByVal sender As Object, ByVal e As EventArgs)
46.        ' insert ข้อมูลใน DataTable ลงฐานข้อมูล
47.        Dim sqlConnectionString As String = "Data Source=.\SQLEXPRESS;Initial Catalog=SqlDatabase;Integrated Security=True"
48.        Dim sqlConnection As New SqlConnection(sqlConnectionString)
49.         
50.        Dim sqlCommandString As String = "Insert Into [MyTable] ([OnAirTime], [Schedule]) Values (@OnAirTime, @Schedule)"
51.        Dim sqlCommand As New SqlCommand(sqlCommandString, sqlConnection)
52.        'รูปแบบการกำหนดค่า: ชื่อพารามิเตอร์, ดาต้าไทป์, ขนาด, ชื่อคอลั่มของดาต้าเทเบิลที่จะป้อนให้พารามิเตอร์
53.        sqlCommand.Parameters.Add("@OnAirTime", SqlDbType.NVarChar, 50, "OnAirTime")
54.        sqlCommand.Parameters.Add("@OnAirTime", SqlDbType.NVarChar, 200, "Schedule")
55.         
56.        Dim dataAdapter As New SqlDataAdapter()
57.        dataAdapter.InsertCommand = sqlCommand
58.        dataAdapter.Update(dataTable) 'กำหนดดาต้าเทเบิลที่ใช้ในการ insert
59.    End Sub
60.     
61.    Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
62.        If e.Row.RowType = DataControlRowType.DataRow Then
63.            e.Row.Cells(0).Text = DateTime.Parse(e.Row.Cells(0).Text).ToShortTimeString()
64.            e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Center
65.        End If
66.    End Sub
67.End Class


ลองดูว่าได้ไหม
Date : 2010-05-08 09:02:48 By : tungman
 

 

No. 3

Guest


ขอคนช่วยหน่อยครับ ไปต่อไม่ได้ไม่ได้อ่ะครับ
ขอบคุณครับ
Date : 2010-05-08 09:32:07 By : kawin
 

 

No. 4

Guest


ขอบคุณครับ คุณ tungman พอดีเพิ่งเห็นนะครับ คือผมใช้แบบคุณ tungman ดูแล้วแต่บางคอลัม ที่เป็นตัวเลขและตัวหนังสือแบบคนละแถว มันจะมองไม่เห็นบางอันอ่ะครับ
เช่น ถ้าแถวแรกเป็นตัวเลข แถวต่อมาเป็นตัวหนังสือ มันก็จะไม่เห็นตัวหนังสือจะเป็นค่าว่างจะเห็นแต่ตัวเลข ครับ
ผมเลยใช้วิธีนี้แต่ไม่เห็นภาษาไทยอ่ะครับทำไงดี ขอบคุณมากครับ
Date : 2010-05-08 09:39:38 By : kawin
 

 

No. 5



โพสกระทู้ ( 3,144 )
บทความ ( 1 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์


0

ลองแล้วไม่เห็นเป็นไรเลย
Date : 2010-05-08 09:53:06 By : tungman
 

 

No. 6

Guest


ขอบคุณครับ คุณ tungman ขอลองดูหน่อยนะครับ
Date : 2010-05-08 10:00:51 By : kawin
 

 

No. 7

Guest


ก็ยังใช้ไม่ได้อ่ะครับ บางตัวที่มันชิดซ้ายก็จะไม่อ่าน เป็นค่าว่างซะงั้น
ก็ขอขอบคุณมากครับ
กำลังหาทางทำแบบอ่านทีละบรรทัดแบบเดิมให้อ่านภาษาไทยให้ได้
Date : 2010-05-08 12:48:33 By : kawin
 

 

No. 8

Guest


เอา text ใน csv มาดูดิ๊ ว่าทำไมไม่ได้

ถ้ามันไม่แสดงภาษาไทยก็แสดงว่ามันไม่ได้ encode ด้วย utf-8 ต้องหาทางแปลงเป็น utf-8 ให้ได้ก่อน
Date : 2010-05-08 16:57:01 By : tungman
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยหน่อยครับ asp.net กับการ import csv ไฟล์ครับ คือผมทำตามนี้แล้วอ่ะครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่