Format.md 1.7 KB
Newer Older
F
feilong 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
# 字符串格式化

C# 提供了丰富的字符串格式化支持。

* 普通字符串可以使用`\`来做转义
* 支持插入 Unicode 编码
* 使用 `@"23六jlqkjr"` 风格可以实现逐字文本输出
* 使用 `$"{variable_name}"` 风格可以在字符串内插入变量

以下格式化代码,能正确运行的有哪些?

一:

```csharp
Console.WriteLine("{\"err\":\"success\", \"value\":\"C#之父: 安德斯·海尔斯伯格\"}");
Console.WriteLine("{\"err\":\"success\", \"value\":\"C:\\data\"}");
```

二:

```csharp
Console.WriteLine("{\"err\":\"success\", \"value\":\"\u0043\u0023\u4e4b\u7236\u003a\u0020\u5b89\u5fb7\u65af\u00b7\u6d77\u5c14\u65af\u4f2f\u683c\"}");
```

三:

```csharp
Console.WriteLine(@"
{
    ""err"": ""success"",
    ""value"": ""C#之父: 安德斯·海尔斯伯格""
}
");
```

四:

```csharp
var msg = "success";
var value = "C#之父: 安德斯·海尔斯伯格";
Console.WriteLine($"{{\"err\":\"{msg}\", \"value\":\"{value}\"}}");
```

五:

```csharp
var msg = "success";
var value = "C#之父: 安德斯·海尔斯伯格";
Console.WriteLine($@"
{{
    ""err"": ""{msg}"",
    ""value"": ""{value}""
}}
");
```

六:

```csharp
var msg = "success";
var value = "C#之父: 安德斯·海尔斯伯格";
Console.WriteLine($@"
{
    "err": "{msg}",
    "value": "{value}"
}
");
```

七:

```csharp
var msg = "";
var value = "";
Console.WriteLine(@"
{
    "err": "success",
    "value": "C#之父: 安德斯·海尔斯伯格"
}
");
```

## 答案

```bash
一、二、三、四、五
```

### 选项

### A

```bash
一、二、三、四、六
```

### B

```bash
一、二、三、五、六
```

### C

```bash
二、三、四、五、七
```

### D

```bash
一、三、四、五、七
```