Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
#1

Как сформировать строку? - C#

23.04.2013, 16:10. Просмотров 638. Ответов 19
Метки нет (Все метки)

Доброго времени суток. Помогите сформировать строку:
Есть строка для плеера, указывающая на местоположение файла
C#
1
 string soundfile = @"D:\Music\folder\sound_name.wav";
Нужно её сформировать с помощью переменных...Вот так

C#
1
2
3
4
string f="folder";
string s="sound_name";
 
string soundfile=@"D:\Music\"+f+"\"+s+".wav";
Но не выходит...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2013, 16:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как сформировать строку? (C#):

Mysql Connector: как сформировать строку подключения
Использую Mysql Connector для подключения к mysql. Ни как не могу строку...

Как foreach забрать нужные значения из списка и сформировать в строку
Добрый день, надеюсь на Вашу помощь. Имеется: public IList<EcdWarranty>...

Не могу сформировать строку XML
Добрый день, создаю YML для яндекс маркета...мне нужно выводить строку с...

Не получается сформировать строку для YML
Добрый день, создаю YML для яндекс маркета...мне нужно выводить строку с...

Сформировать строку представляющую запись выражения в постфиксной форме
Линейные структуры данных. Стек. Очередь Пусть строка символов A, введенная...

Удалить из каждого слова цифры и сформировать новую строку
Дан одномерный массив слов. Удалить из каждого слова цифры и сформировать...

19
akafeanor
59 / 58 / 15
Регистрация: 04.05.2010
Сообщений: 160
23.04.2013, 16:24 #2
Попробуй так.
string soundfile=@"D:\Music\"+f+"\\"+s+".wav";
1
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
23.04.2013, 16:27 #3
C#
1
2
3
4
            string f="folder";
            string s="sound_name";
 
            string soundfile= @"D:\Music\" + f + @"\" + s+".wav";
Слэш по умолчанию вставляет переход на новую строку.
1
phantom96
MЫW
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
23.04.2013, 16:29 #4
"D:\\Music\\" + f + "\\" + s " + ".wav";
И без собак будет пахать.
1
Bringoff
СуперМодулятор
133 / 132 / 48
Регистрация: 03.11.2012
Сообщений: 974
23.04.2013, 16:37 #5
А вообще можно слэши в другую сторону писать - винда умная, разберется

Добавлено через 4 минуты
Цитата Сообщение от phantom96 Посмотреть сообщение
И без собак будет пахать.
Руссо туристо. Облико моралэ. Собака - универсальнее. Она просто отменяет все символы форматирования типа \n, \s ...
1
Монфрид
1208 / 1018 / 293
Регистрация: 07.03.2012
Сообщений: 3,243
Завершенные тесты: 2
23.04.2013, 16:38 #6
так может?
C#
1
string soundfile=@"D:\Music\"+f+@"\"+s+".wav";
Добавлено через 27 секунд
всё уже расписали..
1
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
23.04.2013, 17:23  [ТС] #7
Спасибо, всем отписавшимся. Так работает:

Цитата Сообщение от Монфрид Посмотреть сообщение
C#
1
string soundfile=@"D:\Music\"+f+@"\"+s+".wav";
Добавлено через 27 секунд
всё уже расписали..
0
Exerion
[Bicycle Reinventor]
288 / 228 / 105
Регистрация: 19.10.2011
Сообщений: 605
Записей в блоге: 2
Завершенные тесты: 2
23.04.2013, 17:40 #8
C#
1
string soundfile = Path.Combine(@"D:\Music", f, s + ".wav");
1
phantom96
MЫW
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
23.04.2013, 21:08 #9
del
0
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
25.04.2013, 16:30  [ТС] #10
А как сделать без указания полного адреса?

C#
1
2
//string soundfile = @"D:\Music\" + f + @"\" + s + ".wav";
string soundfile = @"~\" + f + @"\" + s + ".wav";
так не находит

Добавлено через 31 минуту
все файлы проекта в папке D:\Music
0
kontuPauk
300 / 298 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
Завершенные тесты: 1
25.04.2013, 16:37 #11
C#
1
string soundfile = Path.Combine(Environment.CurrentDirectory, f, s + ".wav");
1
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
25.04.2013, 19:02  [ТС] #12
Цитата Сообщение от kontuPauk Посмотреть сообщение
string soundfile = Path.Combine(Environment.CurrentDirectory, f, s + ".wav");
Получается следующая ссылка
C:\\Program Files\\Common Files\\Microsoft Shared\\DevServer\\10.0\\folder\\sound_name.wav
Вашим методом


А нужно
C#
1
string soundfile=@"Папка проекта\"+f+"\"+s+".wav";
0
Exerion
[Bicycle Reinventor]
288 / 228 / 105
Регистрация: 19.10.2011
Сообщений: 605
Записей в блоге: 2
Завершенные тесты: 2
25.04.2013, 19:43 #13
Что вы подразумеваете под "Папка проекта"? Как она связана с реальной исполняемой программой?
1
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
25.04.2013, 19:49  [ТС] #14
Exerion, под "Папка проекта" я подразумеваю папку в которой все файлы проекта.. .cs .sln .resx и остальные. Она называется, скажем, WindowsApplication9.

Добавлено через 1 минуту
Чтобы если я перемещу папку на диск С, или куда-то в другое место, всё продолжало работать без правки ссылок.
0
phantom96
MЫW
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
25.04.2013, 20:05 #15
А если у пользователя не в D:\Music музыка? Тогда добавляйте поле, в которое вводится путь и его вместо CurrentDirectory используйте.
0
Exerion
[Bicycle Reinventor]
288 / 228 / 105
Регистрация: 19.10.2011
Сообщений: 605
Записей в блоге: 2
Завершенные тесты: 2
25.04.2013, 20:12 #16
Т_Ё_М_А, либо вы делаете так, чтобы папка с музыкой всегда была там же, где исполняемый файл программы, либо делаете по варианту phantom96.
В идеале адрес папки можно сохранять в настройках программы, чтобы не сбивалось от запуска к запуску.
1
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
25.04.2013, 20:15  [ТС] #17
phantom96, это не выход. Должен быть другой способ.

Добавлено через 2 минуты
Exerion,
Цитата Сообщение от Exerion Посмотреть сообщение
либо вы делаете так, чтобы папка с музыкой всегда была там же, где исполняемый файл программы, либо делаете по варианту phantom96.
Так исполняемый файл и так всегда там же, где папка с музыкой! Как написать путь???
0
Exerion
[Bicycle Reinventor]
288 / 228 / 105
Регистрация: 19.10.2011
Сообщений: 605
Записей в блоге: 2
Завершенные тесты: 2
25.04.2013, 20:24 #18
Если вариант kontuPauk не работает (иногда бывает, что Environment.CurrentDirectory выдаёт не папку, где экзешник, а некую другую), то попробуйте
C#
1
string soundfile = Path.Combine(Application.StartupPath, f, s + ".wav");
Добавлено через 3 минуты
Если и это не сработает, то пробуйте варианты
Path.GetDirectoryName(System.Reflection.Assembly.G etExecutingAssembly().GetName().CodeBase)
AppDomain.CurrentDomain.BaseDirectory
ну или на крайняк
Environment.GetCommandLineArgs()[0]
1
Т_Ё_М_А
24 / 7 / 2
Регистрация: 14.12.2009
Сообщений: 281
25.04.2013, 20:30  [ТС] #19
Application.StartupPath - работает только в Windows.Forms, а мне для ASP.

Добавлено через 2 минуты
Exerion, Спасибо!
AppDomain.CurrentDomain.BaseDirectory - так работает!!!

Тему можно закрывать)
0
phantom96
MЫW
124 / 109 / 9
Регистрация: 15.02.2013
Сообщений: 538
25.04.2013, 22:24 #20
Вам тут люди реальные вещи говорят, а вы ***** придумываете. AppDomain.CurrentDomain.BaseDirectory это просто путь к .exe файлу программы. Вы вернулись к тому с чего начинали.
0
25.04.2013, 22:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2013, 22:24
Привет! Вот еще темы с решениями:

Распарсить строку и сформировать новую на основе полученных данных
Суть в том, что есть список с айдишниками (пусть такой: 10 20 30). Нужно...

Сформировать строку, состоящую из первых символов слов, разделенных пробелами
Дана строка, состоящая из слов,разделенных пробелами. Сформировать...

Сформировать строку, в которую войдут все цифры из исходной строки
Дана строка цифр. Сформировать строку, в которую войдут все цифры из исходной...

Сформировать строку, в которою войдут все цифры из исходной строки
Дана строка цифр. Сформировать строку, в которою войдут все цифры из исходной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru