Как изменить это на String.Format в C # - PullRequest
2 голосов
/ 18 февраля 2011

Оригинал

string strCommandLineArgs = (((("-i" + " ") + strVideoPath + " -vcodec mjpeg -vframes 1 -an -f rawvideo -s ") + intWidth.ToString() + "x") + intHeight.ToString() + " ") + strImagePath + " -ss 2";

Я сделал это

string strCommandLineArgs = string.Format("-i {0} -vcodec mjpeg -vframes 1 -an -f rawvideo -s {1}x{2} {3} -ss 2", strVideoPath, intWidth, intHeight, strImagePath);

Не могу найти разницу в использовании ( и) в строке.

Ответы [ 2 ]

5 голосов
/ 18 февраля 2011

Разницы нет.Скобки не добавляют в строку ничего особенного.

1 голос
/ 18 февраля 2011

Это глупо:

string strCommandLineArgs = (((("-i" + " ") + strVideoPath + " -vcodec mjpeg -vframes 1 -an -f rawvideo -s ") + intWidth.ToString() + "x") + intHeight.ToString() + " ") + strImagePath + " -ss 2";

это как писать:

((((1+2)+3)+4)+5)

Вы можете написать это как:

string strCommandLineArgs = "-i" + " " + strVideoPath + " -vcodec mjpeg -vframes 1 -an -f rawvideo -s " + intWidth.ToString() + "x" + intHeight.ToString() + " " + strImagePath + " -ss 2";
...