13

このような文字列を作成しようとしています

string myStr = "CREATE TABLE myTable
(
id text,
name text
)";

しかし、エラーが発生します:http: //i.stack.imgur.com/o6MJK.png

ここで何が起こっているのですか?

4

3 に答える 3

26

アットマーク( )を前に付けて、逐語的な文字列を作成し@ます。通常の文字列リテラルは複数行にまたがることはできません。

string myStr = @"CREATE TABLE myTable
(
    id text,
    name text
)";

逐語的な文字列(で導入@)内では、円記号(\)はエスケープ文字として解釈されなくなることに注意してください。これは、正規表現とファイルパスに実用的です

string verbatimString = @"C:\Data\MyFile.txt";
string standardString = "C:\\Data\\MyFile.txt";

二重引用符をエスケープするには、二重引用符を2倍にする必要があります

string verbatimString  = @"This is a double quote ("")";
string standardString  = "This is a double quote (\")";
于 2012-09-22T23:06:19.540 に答える
8
string myStr = @"CREATE TABLE myTable
(
id text,
name text
)";
于 2012-09-22T23:05:48.610 に答える
3

文字列の前に@記号を使用します。

于 2012-09-22T23:06:04.490 に答える