Solved

How do I add a new line in a string

Posted on 2007-12-03
9
407 Views
Last Modified: 2012-06-27
I have a series of strings that I am adding together to create a new string.

For example

string firstname = "firstname"
string lastname = "lastname"
string address = "address"

I want it in a single string with the address on a new line from the first name last name so that the new string if displayed woul look like

firstname lastname
address

How do I do this?

obviously its

string combineadd = firstname + " " + lastname  

I tried adding "\n" but that doesnt work..what is needed to add the address string to the combined string as a new line.


0
Comment
Question by:Prysson
9 Comments
 
LVL 8

Accepted Solution

by:
Chumad earned 300 total points
ID: 20398061
Is this supposed to be displayed on a webpage? If so, use "<br>" as a line break.  If it's a winapp, you may also try /n/r
0
 
LVL 8

Expert Comment

by:Chumad
ID: 20398070
Oops, it might actually be  \r\n for line feed/carriage return for a winapp form :)
0
 
LVL 29

Expert Comment

by:anarki_jimbel
ID: 20398273
For windows applications you may also use Environment.NewLine:

string combineadd = firstname + " " + lastname  + Environment.NewLine + address;

" \r\n" will also work, as Chumad indicated above.
0
 
LVL 40

Assisted Solution

by:evilrix
evilrix earned 200 total points
ID: 20398727
You may want to consider this: -

"A String object is called immutable (read-only) because its value cannot be modified once it has been created. Methods that appear to modify a String object actually return a new String object that contains the modification. If it is necessary to modify the actual contents of a string-like object, use the System.Text.StringBuilder class."

http://msdn2.microsoft.com/en-us/library/system.string.aspx
http://msdn2.microsoft.com/en-us/library/system.text.stringbuilder.aspx
            StringBuilder sb = new StringBuilder();

            sb.Append(firstname);

            sb.Append(" ");

            sb.Append(lastname);

            sb.Append(Environment.NewLine);

            sb.Append(address);
 

            string s = sb.ToString();

Open in new window

0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 8

Expert Comment

by:Chumad
ID: 20398810
Evilrix, that is good practice to do, however it doesn't fit in this scenario because the string being created is "combineadd" and it's initial creation is being set to firstName + " " + lastName.

If he was doing:

combineadd = firstname;
combineadd += lastname;
combineadd += "\r\n";

Then it would make sense.

0
 
LVL 40

Expert Comment

by:evilrix
ID: 20398876
It really depends on whether the operator+() results in a new temporary string for each call. The fact that there is only one final assignment in the expression doesn't necessarily indicate only one string instantiation. I'd be only too happy to accept your assertion if you can point me to somewhere in the MSDN that confirms this is indeed not the case.
0
 
LVL 40

Expert Comment

by:evilrix
ID: 20399003
http://msdn2.microsoft.com/en-us/library/aa691375(VS.71).aspx

The binary + operator performs string concatenation when one or both operands are of type string.

It is therefore reasonable to assume that str0 + str1 is just syntactic sugar for string.Concat(str0, str1), which creates and returns a new string.

http://msdn2.microsoft.com/en-us/library/a6d350wd.aspx

Therefore I conclude that...

string combineadd = firstname + " " + lastname  + Environment.NewLine + address

is really just syntactic sugar for...

string combineadd = string.Concat(firstname, string.Concat(" ", string.Concat(lastname, string.Concat(Environment.NewLine, address))));

...which creates 4 new strings as part of the concatenation process.

Of course I might be wrong but I am unable to find anything to contradict this assumption.

-Rx.
0
 

Author Closing Comment

by:Prysson
ID: 31412412
The  was the solution though the suggested answer left off the / in th tag.

But I apprecit the string builder solution..makes builnding the concatenated string much easier.

Thanks
0
 

Expert Comment

by:mhouldridge
ID: 20640357
Here is the button;

        private void button4_Click(object sender, EventArgs e)
        {
            string Newline;
            Newline = textFormatting.Newline(TxtIn.Text);
            TxtIn2.Text = Newline;
        }


Here is the class code;

        public static string Newline(string TxtIn)
        {
           return TxtIn + Environment.NewLine;
        }
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Extention Methods in C# 3.0 by Ivo Stoykov C# 3.0 offers extension methods. They allow extending existing classes without changing the class's source code or relying on inheritance. These are static methods invoked as instance method. This…
Exception Handling is in the core of any application that is able to dignify its name. In this article, I'll guide you through the process of writing a DRY (Don't Repeat Yourself) Exception Handling mechanism, using Aspect Oriented Programming.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.
Delivering innovative fully-managed cloud services for mission-critical applications requires expertise in multiple areas plus vision and commitment. Meet a few of the people behind the quality services of Concerto.

929 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

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now