PDA

View Full Version : کار با رشته



arsalansalar
چهارشنبه 17 بهمن 1386, 16:45 عصر
من یک سوال درباره رشته داشتم به این صورت که مثال زیر ببینید:
ahmad;ali
من می خواهم یک دستور بنویسم به این صورت که زمانی که رشته به ";"رسید عبارت سمت چپ در تکست باکس 1 و عبارت سمت راست سمی کالن در تکست باکس 2 نمایش داده شود.

raravaice
چهارشنبه 17 بهمن 1386, 17:32 عصر
سلام

از خاصیت split رشته ها استفاده کنید تا به chararray تبدیل بشه بعد array رو بارگزاری کنید تو بانک.

موفق باشید

babak.h
چهارشنبه 17 بهمن 1386, 17:36 عصر
با سلام

این نوع متن ها را اصطلاحا CSV (Comma separated values) می نامند. یعنی رشته ای از مقادیر که بوسیله کاما (یا هر جداکننده دیگر از هم جدا شده است).
برای استخراج مقادیر از این رشته در دات نت می توان از متد split() از کلاس String استفاده کرد.
برای مثال :



Dim CSV As String

CSV = "ahmad;ali"

Dim values As String() = Nothing

values = CSV.Split(";")

Dim s As String

For Each s In values
Console.WriteLine(s)

Next s

اجرای کد فوق باعث می شود مقادیر رشته CSV در آرایه رشته ای values ذخیره شوند یعنی
values(0)= ahmad
values(1)=ali


موفق باشید

arsalansalar
چهارشنبه 17 بهمن 1386, 18:40 عصر
سلام

از خاصیت split رشته ها استفاده کنید تا به chararray تبدیل بشه بعد array رو بارگزاری کنید تو بانک.

موفق باشید
با تشکر از لطف شما ولی من در بانک نمی خواهم ذخیره کنم.

arsalansalar
چهارشنبه 17 بهمن 1386, 18:42 عصر
با سلام





این نوع متن ها را اصطلاحا CSV (Comma separated values) می نامند. یعنی رشته ای از مقادیر که بوسیله کاما (یا هر جداکننده دیگر از هم جدا شده است).


برای استخراج مقادیر از این رشته در دات نت می توان از متد split() از کلاس String استفاده کرد.


برای مثال :





Dim CSV As String





CSV = "ahmad;ali"


Dim values As String() = Nothing


values = CSV.Split(";")


Dim s As String


For Each s In values
Console.WriteLine(s)


Next s





اجرای کد فوق باعث می شود مقادیر رشته CSV در آرایه رشته ای values ذخیره شوند یعنی


values(0)= ahmad


values(1)=ali





موفق باشید



دوست عزیز من یک فایل دارم که داری 20 نوع از این اسامی است ولی شما با یک اسم مثال زدید اگر من تعداد اسم بیشتری داشته باشم باید چکار کنم؟

arsalansalar
چهارشنبه 17 بهمن 1386, 19:25 عصر
با تشکرازدوستان من از کد زیر استفاده کردم.و جواب داد.

Dim trdInput As IO.TextReader
Dim strLine, h, l AsString
Dim i, j, k AsInteger
trdInput = myFile.OpenText("FileName")
strLine = trdInput.ReadLine()
WhileNot (strLine IsNothing)
'Code to process one line goes here.
strLine = trdInput.ReadLine()
i = strLine.IndexOf(";")
j = strLine.Length
k = i - j
h = strLine.Substring(0, i)
l = strLine.Substring(i, j)
EndWhile
trdInput.Close()