?
Solved

CSV items to multiline textbox in VB.NET

Posted on 2009-05-14
7
Medium Priority
?
857 Views
Last Modified: 2013-11-26
I am using Visual Studio 2008. I am trying to take a line of comma separated items and send them to a multiline textbox.  For example "1,2,3,4" would appear in the textbox as:

1
2
3
4

I would like to do this in a For Each or For Next statement.
0
Comment
Question by:schwientekd
  • 3
  • 2
  • 2
7 Comments
 
LVL 16

Expert Comment

by:Walter Ritzel
ID: 24389013
If you dont have the comma as a valid char for each value, you can try something like this:

Dim formatedValue as String

formatedValue = SourceCSVLine.Replace(",",CHR(13))

textBox.Text = formatedValue

Sorry for bad VB syntax... I'm C# guy....
0
 
LVL 8

Expert Comment

by:RyanAndres
ID: 24389106
The following code assigns each delimited part as a new line
string line = "1,2,3,4";
textBox.Text = line.Replace(',', '\n');

Open in new window

0
 
LVL 8

Expert Comment

by:RyanAndres
ID: 24389115
Someone beat me and I forgot to convert to VB:
Dim line As String = "1,2,3,4"
textBox.Text = line.Replace(","c, ControlChars.Lf)

Open in new window

0
Prepare for your VMware VCP6-DCV exam.

Josh Coen and Jason Langer have prepared the latest edition of VCP study guide. Both authors have been working in the IT field for more than a decade, and both hold VMware certifications. This 163-page guide covers all 10 of the exam blueprint sections.

 

Author Comment

by:schwientekd
ID: 24389128
I modified your lines slightly by replacing CHR(13) with vbCrLf and that did accomplish the simple question I asked.  However I was looking for a way to do this with a For statement.  The reason is that the thing I am trying to accomplish is much more complex but I was trying to start small.  The comma separated items I am using are actually going to be codes that are stored in a table.  Each code will have another column with a description and the descriptions are what need to appear in my textbox. Sorry for the long explanation which I don't expect to be answered in this post but I just wanted to explain my reason for wanting to use a For statement.
0
 
LVL 8

Accepted Solution

by:
RyanAndres earned 2000 total points
ID: 24389333
This code allows you to manipulate each line. If this is not what you're looking for please provide a sample input and expected output.

Dim str As String = "1,2,3,4"
Dim lines As String() = str.Split(","c)
 
Dim output As New StringBuilder()
For Each line As String In lines
    output.AppendLine(line.Trim())
Next
txtFirstName.Text = output.ToString()

Open in new window

0
 
LVL 16

Expert Comment

by:Walter Ritzel
ID: 24390580
In this case, I think the last code from RyanAndres is what you are looking for.
0
 

Author Closing Comment

by:schwientekd
ID: 31581651
I think that this will get me started.  Thanks.
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article will inform Clients about common and important expectations from the freelancers (Experts) who are looking at your Gig.
We live in a world of interfaces like the one in the title picture. VBA also allows to use interfaces which offers a lot of possibilities. This article describes how to use interfaces in VBA and how to work around their bugs.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Screencast - Getting to Know the Pipeline

840 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question