ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programming[VB.net มือใหม่] ผมจะใช้คำสั่ง split array ยังไงดีครับ
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: [VB.net มือใหม่] ผมจะใช้คำสั่ง split array ยังไงดีครับ  (อ่าน 3045 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
DewChelsea
ก๊วนเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 422



ดูรายละเอียด เว็บไซต์
« เมื่อ: 05 กุมภาพันธ์ 2014, 23:41:50 »

ใน format ของโปรแกรม ผมต้องการให้มันมี4 column ซึ่งแบ่งตาม comma (,)

aaa,bbb,ccc,ddd

เมื่อกดปุ่มมันจะแบ่งไฟล์เองอะครับ

คำถาม .. แล้วผมจะกำหนดชื่อตัวแปรแทนทั้ง4 column ยังไงอะครับ ผมมือใหม่มากๆ นั่งคิดสองวันละ  Cry

โค๊ด:
        Dim str As String
        Dim strArr() As String
        Dim count As Integer
        str = TextBox1.Text        'textbox1 = มีข้อความที่ต้องการแบ่งอยุ่ในนี้ครับ
        strArr = str.Split(",")
        For count = 0 To strArr.Length - 1
            strArr = str.Split(",")
        Next

ที่ต้องการคือแบบนี้ครับ ตั้งชื่อตัวแปรแทนแต่ละ part ที่แบ่งตาม comma
part1 = ?
part2= ?
part3 = ?
part4 = ?

ขอบคุณทุกความเห็นมากๆครับ  Embarrassed
บันทึกการเข้า

DewChelsea
ก๊วนเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 422



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 06 กุมภาพันธ์ 2014, 09:07:14 »

 wanwan008 wanwan006
บันทึกการเข้า

verysims
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 151
ออฟไลน์ ออฟไลน์

กระทู้: 1,469



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 06 กุมภาพันธ์ 2014, 10:26:18 »

ถ้า column ไม่เยอะก็ใช้แบบนี้ก็ได้ครับ
โค๊ด:
  
        Dim str As String
        Dim strArr() As String
        Dim count As Integer
        str = TextBox1.Text        'textbox1 = มีข้อความที่ต้องการแบ่งอยุ่ในนี้ครับ
        strArr = str.Split(",")

if strArr.Length = 4 then 'เช็คหน่อยนึงว่าครบ 4 ตัวจริงมั้ย
 Dim part1 As string =  strArr(0)
 Dim part2 As string =  strArr(1)
 Dim part3 As string =  strArr(2)
 Dim part4 As string =  strArr(3)

'เขียน code ต่อจากตรงนี้ เอาตัวแปรไปใช้ได้เลยครับ
....

end if

หรือถ้าไม่อยากประกาศตัวแปรเราก็อ้างไปที่ index ของ array ไปใช้ได้เลยครับ
โค๊ด:
  
        Dim str As String
        Dim strArr() As String
        Dim count As Integer
        str = TextBox1.Text        'textbox1 = มีข้อความที่ต้องการแบ่งอยู่ในนี้ครับ
        strArr = str.Split(",")

 if strArr.Length = 4 then 'เช็คหน่อยนึงว่าครบ 4 ตัวจริงมั้ย

'  strArr(0) อันนี้พาท 1
'  strArr(1) อันนี้พาท 2
'  strArr(2) อันนี้พาท 3
'  strArr(3) อันนี้พาท 4

'สมมติเอาไปใช้
Dim strPart1Name As string = "อันนี้พาท 1 ชื่อของมันคือ " & strArr(0)
Dim strPart2Name As string = "อันนี้พาท 2 ชื่อของมันคือ " & strArr(1)
...

end if
ตามนี้ครับ  Tongue
บันทึกการเข้า

DewChelsea
ก๊วนเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 422



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 06 กุมภาพันธ์ 2014, 10:38:21 »

ถ้า column ไม่เยอะก็ใช้แบบนี้ก็ได้ครับ
โค๊ด:
  
        Dim str As String
        Dim strArr() As String
        Dim count As Integer
        str = TextBox1.Text        'textbox1 = มีข้อความที่ต้องการแบ่งอยุ่ในนี้ครับ
        strArr = str.Split(",")

if strArr.Length = 4 then 'เช็คหน่อยนึงว่าครบ 4 ตัวจริงมั้ย
 Dim part1 As string =  strArr(0)
 Dim part2 As string =  strArr(1)
 Dim part3 As string =  strArr(2)
 Dim part4 As string =  strArr(3)

'เขียน code ต่อจากตรงนี้ เอาตัวแปรไปใช้ได้เลยครับ
....

end if

หรือถ้าไม่อยากประกาศตัวแปรเราก็อ้างไปที่ index ของ array ไปใช้ได้เลยครับ
โค๊ด:
  
        Dim str As String
        Dim strArr() As String
        Dim count As Integer
        str = TextBox1.Text        'textbox1 = มีข้อความที่ต้องการแบ่งอยู่ในนี้ครับ
        strArr = str.Split(",")

 if strArr.Length = 4 then 'เช็คหน่อยนึงว่าครบ 4 ตัวจริงมั้ย

'  strArr(0) อันนี้พาท 1
'  strArr(1) อันนี้พาท 2
'  strArr(2) อันนี้พาท 3
'  strArr(3) อันนี้พาท 4

'สมมติเอาไปใช้
Dim strPart1Name As string = "อันนี้พาท 1 ชื่อของมันคือ " & strArr(0)
Dim strPart2Name As string = "อันนี้พาท 2 ชื่อของมันคือ " & strArr(1)
...

end if
ตามนี้ครับ  Tongue


ขอบคุณมากครับ  Cry

แต่ตอนนี้ partสุดท้ายของผม มันไม่ยอม newline ให้อะครับ มันเอาarray แรกของอีกบรรทัดมาต่อให้อะครับ

code ประมาณนี้ครับ
โค๊ด:
            If part4.StartsWith("http://") Then
                part4 = vbCrLf
            End If

ผมลองให้มันใช้ mesege box show ตอนมันแบ่ง พาท 1,2,3 ok ละครับ แต่ part4 มันขึ้นแล้วพ่วง array ของอีกบรรทัดมาอะครับ  Embarrassed
บันทึกการเข้า

verysims
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 151
ออฟไลน์ ออฟไลน์

กระทู้: 1,469



ดูรายละเอียด เว็บไซต์
« ตอบ #4 เมื่อ: 06 กุมภาพันธ์ 2014, 10:55:50 »

พอจะบอกได้มั้ยครับว่าจะทำอะไร ผมงง ครับ
ขอดู code มากกว่านี้หน่อยได้มั้ยครับ ใช้เป็นข้อมูลสุมมติ ที่คล้ายๆของจริงก็ได้ครับ
ถ้าไม่สะดวกโพสต์ก็ส่งมาให้ดูทาง PM ก็ได้ครับ
Tongue
บันทึกการเข้า

DewChelsea
ก๊วนเสียว
*

พลังน้ำใจ: 9
ออฟไลน์ ออฟไลน์

กระทู้: 422



ดูรายละเอียด เว็บไซต์
« ตอบ #5 เมื่อ: 06 กุมภาพันธ์ 2014, 11:20:25 »

พอจะบอกได้มั้ยครับว่าจะทำอะไร ผมงง ครับ
ขอดู code มากกว่านี้หน่อยได้มั้ยครับ ใช้เป็นข้อมูลสุมมติ ที่คล้ายๆของจริงก็ได้ครับ
ถ้าไม่สะดวกโพสต์ก็ส่งมาให้ดูทาง PM ก็ได้ครับ
Tongue
ขอบคุณครับ wanwan017 Tongue
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์