2016-11-29 19 views
0

可以ReSharper的轉換這樣的:ReSharper的:解開一長串聲明

var str = "gjkldfhgiodfh hg jkfgh jkhjhklfhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

進入這個:

var str = @"gjkldfhgiodfh 
       hg jkfgh jkhjhkl 
       fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

我已經看過了選項Code Editing -> C# -> Formatting style -> Line Breaks and Wrapping在迴繞長行(它的選中),並保持既有線打破(未選中),但這些設置在這種情況下無法幫助我。

我有終極版(2016.2.2)。

謝謝。

回答

4

不,它不能。

而這主要是因爲你的建議不是簡單的一些不錯的格式,而是一個完整的內容變化。

在字符串前面添加'@'時,後面的所有內容(包括換行符,製表符和空格)將成爲該字符串的內容。如果您使用該字符串,則也會使用所有內容,包括換行符,製表符和空格。

只是一個Console.WriteLine嘗試:

using System; 

public class Program 
{ 
    public static void Main() 
    { 
     var str = @"gjkldfhgiodfh 
        hg jkfgh jkhjhkl 
        fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl"; 

     Console.WriteLine(str); 
    } 
} 

輸出將是:

> gjkldfhgiodfh 
>      hg jkfgh jkhjhkl 
>      fhfhkl jkghj´kl fjgfhjklgfh fkhgfkl 

而這很可能不是你想要的。

+0

在兩行上將var str =「abcdefgh」轉換爲var str =「abcd」+「efgh」怎麼辦? –

+0

@BudaGavril這可能是可能的,但我猜你必須寫一個自定義規則。 – juharr

+0

@juharr似乎resharper已經這樣做了:https://www.jetbrains.com/help/resharper/2016.2/Splitting_Lines_with_String_Literals.html –