Cum se adaugă ghilimele duble la un șir de caractere care se află în interiorul unei variabile? (Programare, C#, Asp.Net, Ghilimele Duble)

ANP a intrebat.

Am o variabilă de genul:

string title = string.empty;

Nevoia mea este ca indiferent de șirul care îi este trecut să afișez conținutul în interiorul unui div cu ghilimele duble. Așa că am scris ceva de genul:

...
...
<div>"+ title [email protected]"</div>
...
...

Dar cum să adaug ghilimelele duble aici? Astfel încât să fie afișat ca :

"How to add double quotes"

Comentarii

  • Nope nu funcționează asp.net, c# vs2013 indiferent de modul în care am codul dacă te uiți și sursa paginii &quot; și &#39; sunt întotdeauna afișate. Eu folosesc `Attributes.Add(…’ –  > Por djack109.
  • acest lucru ar fi de ajutor : stackoverflow.com/questions/46298985/… -…  > Por Siavash.
19 răspunsuri
Oded

Trebuie să le scăpați prin dublarea lor (verbatim string literal):

string str = @"""How to add doublequotes""";

Sau cu un literal de șir normal le scăpați cu un :

string str = "
How to add doublequotes
";

Comentarii

  • și cum se elimină în timpul salvării în baza de date? Vreau doar să elimin ghilimelele duble suplimentare folosite pentru scăpare și nu ambele –  > Por Anil Purswani.
  • @AnilPurswani – huh? Trebuie să citești ce înseamnă escaping. –  > Por Oded.
  • atunci când este folosit șirul de caractere str = @”””How to add doublequotes”””; acesta stochează „”How to add doublequotes”” în baza de date…..și în timp ce se extrage, recuperează același lucru…. acum încerc să-l convertesc….i bine, am primit răspunsul – str.Replace(„\
    „, „
    „); …… oricum, mulțumesc pentru răspuns …. –  > Por Anil Purswani.
  • Dacă doriți ca un șir de caractere să conțină ghilimele, trebuie să le scăpați. Acest lucru nu are nimic de-a face cu stocarea lor în baza de date – dacă doriți să eliminați ghilimelele înainte de a le stoca în BD, atunci faceți asta. –  > Por Oded.
  • da, tocmai încercam să găsesc soluția de pe stackoverflow.com/questions/26118354/… și am ajuns la această întrebare, care pare similară, când au fost preluate datele din baza de date….. –  > Por Anil Purswani.
Fredrik Mörk

Deci, în esență, întrebați cum să stocați ghilimele duble într-o variabilă de tip șir de caractere? Două soluții pentru asta:

var string1 = @"""inside quotes""";
var string2 = "
inside quotes
";

Pentru a clarifica puțin mai bine ce se întâmplă:

var string1 = @"before ""inside"" after";
var string2 = "before 
inside
 after";

schwindelig

Dacă înțeleg bine întrebarea ta, poate că poți încerca asta:

string title = string.Format("<div>
{0}
</div>", "some text");

codea

Dacă trebuie să faceți acest lucru des și ați dori ca acest lucru să fie mai curat în cod, ați putea dori să aveți o metodă de extensie pentru acest lucru.

Acesta este un cod cu adevărat evident, dar totuși cred că poate fi util de apucat și vă face să economisiți timp.

  /// <summary>
    /// Put a string between double quotes.
    /// </summary>
    /// <param name="value">Value to be put between double quotes ex: foo</param>
    /// <returns>double quoted string ex: "foo"</returns>
    public static string AddDoubleQuotes(this string value)
    {
        return "
" + value + "
";
    }

Apoi, puteți apela foo.AddDoubleQuotes() sau „foo”.AddDoubleQuotes(), pentru fiecare șir de caractere pe care îl doriți.

Sper că acest lucru vă ajută.

Yannick Turbang

De asemenea, puteți include ghilimelele duble în ghilimele simple.

string str = '"' + "How to add doublequotes" + '"';

DR.

O altă notă:

    string path = @"H:\MOVIES\Battel SHIP\done-battleship-cd1.avi"; 
    string hh = string.Format("
{0}
", path);
    Process.Start(@"C:Program Files (x86)VideoLANVLCvlc.exe ", hh + " ,--play");

Valoarea reală a hh, așa cum este transmisă, va fi „H:MOVIESBattel SHIPdone-battleship-cd1.avi”.

Atunci când aveți nevoie de literale duble duble folosiți: @”H:MOVIESBattel SHIPdone-battleship-cd1.avi”; În loc de: @”H:MOVIESBattel SHIPdone-battleship-cd1.avi”;Deoarece primul literar este pentru numele căii de acces și apoi al doilea literar este pentru ghilimelele duble.

Said Roohullah Allem

Puteți folosi $.

Șiruri interpolate:Se utilizează pentru a construi șiruri de caractere. Un șir interpolat arată ca un șir șablon care conține expresii interpolate. Un șir interpolat returnează un șir care înlocuiește expresiile interpolate pe care le conține cu reprezentările lor în șir. Această caracteristică este disponibilă în C# 6 și în versiunile ulterioare.

string commentor = $"<span class=
fa fa-plus
 aria-hidden=
true
> {variable}</span>";

Ramya Prakash Rout

Dacă doriți să adăugați ghilimele duble la un șir care conține și valori dinamice. Pentru același lucru, în locul lui CodeId[i] și CodeName[i] puteți pune valorile dinamice.

data = "Test ID=" + "
" + CodeId[i] + "
" + " Name=" + "
" + CodeName[i] + "
" + " Type=
Test
;

Jens

Ați putea folosi &quot; în loc de ". Acesta va fi afișat corect de către browser.

Comentarii

  • Nope nu funcționează asp.net, c# vs2013 indiferent de modul în care am codul dacă te uiți și sursa paginii &quot; și &#39; sunt întotdeauna afișate. Eu folosesc `Attributes.Add(…’ –  > Por djack109.
WorkSmarter

Folosind interpolare de șiruri de caractere cu exemplu de lucru:

var title = "Title between quotes";
var string1 = [email protected]"<div>""{title}""</div>";  //Note the order of the [email protected]
Console.WriteLine (string1);

Ieșire

<div>"Title between quotes"</div>

graham

Utilizați fie

&dquo;
<div>&dquo;"+ title [email protected]"&dquo;</div>

fie scăpați ghilimelele duble:

<div>
"+ title [email protected]"
</div>

Shivam Mishra

În C# puteți folosi:

 string1 = @"Your ""Text"" Here";
 string2 = "Your 
Text
 Here";

Sunil Kumar
string doubleQuotedPath = string.Format(@"""{0}""",path);

Abhishek Poojary

O alternativă indirectă, dar simplu de înțeles, pentru a adăuga ghilimele la începutul și la sfârșitul șirului de caractere –

char quote = '"';

string modifiedString = quote + "Original String" + quote;

Belinda

Puneți o backslash () înainte de ghilimelele duble. Asta ar trebui să funcționeze.

Malathi Mals

În C#, dacă folosim „
, înseamnă că simbolul următor nu este un simbol încorporat în C# care va fi folosit de dezvoltator, așa că în șirul de caractere avem nevoie de ghilimele duble, ceea ce înseamnă că putem pune simbolul „
înaintea ghilimelelor duble. string s = "
Hi
"

5377037

"<i class=
fa fa-check-circle
></i>"
este utilizat cu operatorul ternar cu Eval() legare de date:

Text = '<%# Eval("bqtStatus").ToString()=="Verified" ? 
       Convert.ToString("<i class="fa fa-check-circle"></i>") : 
       Convert.ToString("<i class="fa fa-info-circle"></i>"

Yogesh Sarvaiya

Dacă doriți să adăugați ghilimele duble în HTML

echo "<p>Congratulations,  &#8220; ". $variable ." &#8221;!</p>";
output -> Congratulations, "Mr Jonh "!

Keshav Gera
Start each row with 
-
 to create bullet list.