Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26

System.NotSupportedException: 'The given path's format is not supported.'

10.12.2018, 08:54. Показов 2543. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день! Я делаю программу для переноса данных с Excel в базу данных SQL Server. У меня возникла ошибка, не могу понять в чем дело. Помогите решить ее.

Ругается на эту строку:
C#
1
 Request.Files["file"].SaveAs(fileLocation);
Ошибка:
System.NotSupportedException: 'The given path's format is not supported.'

Часть кода:
C#
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
 public ActionResult Import(HttpPostedFileBase file)
        {
 
            DataSet ds = new DataSet();
            if (Request.Files["file"].ContentLength > 0)
            {
                string fileExtension =
                                     System.IO.Path.GetExtension(Request.Files["file"].FileName);
 
                if (fileExtension == ".xls" || fileExtension == ".xlsx")
                {
                    string fileLocation = Server.MapPath("~/Content/") + Request.Files["file"].FileName;
                    if (System.IO.File.Exists(fileLocation))
                    {
 
                        System.IO.File.Delete(fileLocation);
                    }
 
                    Request.Files["file"].SaveAs(fileLocation);
                    string excelConnectionString = string.Empty;
                    excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=DESKTOP-SAQGILP\\AISMSSQL" + fileLocation + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"";
                    //connection String for xls file format.
                    if (fileExtension == ".xls")
                    {
                        excelConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DESKTOP-SAQGILP\\AISMSSQL" + fileLocation + ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=2\"";
                    }
                    //connection String for xlsx file format.
                    else if (fileExtension == ".xlsx")
                    {
 
                        excelConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=DESKTOP-SAQGILP\\AISMSSQL" + fileLocation + ";Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=2\"";
                    }
                    //Create Connection to Excel work book and add oledb namespace
                   OleDbConnection excelConnection = new OleDbConnection(excelConnectionString);
 
 
                    excelConnection.Open();
                    DataTable dt = new DataTable();
 
                    dt = excelConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
                    if (dt == null)
                    {
                        return null;
                    }
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.12.2018, 08:54
Ответы с готовыми решениями:

NotSupportedException: The given path's format is not supported
Люди, что это??? Иногда происходит на этой строке: FileUpload1.SaveAs(Request.MapPath(Request.ApplicationPath) + "\\" +...

Decoding str is not supported методе format
Доброго времени суток, дорогие форумчане возникла необходимость перевести число в строку и питон ответил: decoding str is not supported....

Текстовой документ: The given path's format is not supported
File.WriteAllText("\\D:"+ s + ".txt",textBox1.Text); Пишет The given path's format is not supported. Как пофиксить?

17
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
10.12.2018, 10:56
Цитата Сообщение от moon-beauty Посмотреть сообщение
У меня возникла ошибка, не могу понять в чем дело.
Остановите отладчик на 13-й строке и посмотрите значение переменной fileLocation.
Подозреваю, что там какая-то ерунда, т.к. свойство FileName уже включает путь.
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
10.12.2018, 11:59  [ТС]
У меня выходит
Application Insights Telemetry (unconfigured):
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
10.12.2018, 12:07
Цитата Сообщение от moon-beauty Посмотреть сообщение
У меня выходит
Application Insights Telemetry (unconfigured)
Откуда это у вас выходит?
Покажите скриншот чтоль.

Не по теме:

как-то двусмысленно получилось...

0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
10.12.2018, 12:23  [ТС]
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
10.12.2018, 12:39
moon-beauty, вот в этом состоянии наведите мышку на fileLocation и вам во всплывающей подсказке покажут ее значение.
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
11.12.2018, 08:47  [ТС]
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
11.12.2018, 09:30
moon-beauty,
Цитата Сообщение от kolorotur Посмотреть сообщение
вот в этом состоянии наведите мышку на fileLocation и вам во всплывающей подсказке покажут ее значение.
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
11.12.2018, 12:12  [ТС]
там просто показывает путь моего файла
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
11.12.2018, 12:39
Цитата Сообщение от moon-beauty Посмотреть сообщение
там просто показывает путь моего файла
Так скопируйте его и вставьте сюда.
Ну или сами найдите ошибку в пути, потому что исключение указывает именно на это.

Вроде вам надо, а приходится все чуть ли не пассатижами вытягивать
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
11.12.2018, 12:41  [ТС]
я так пробовала, но не выходит
спасибо за помощь
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
11.12.2018, 13:19
Цитата Сообщение от moon-beauty Посмотреть сообщение
я так пробовала
Как? Скопировать путь из отладчика и вставить его в эту тему в качестве сообщения?
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
12.12.2018, 06:32  [ТС]
Спасибо вам за помощь и терпение, просто до этого я не сталкивалась с такими проблемамы.

"C:\\Users\\Desktop\\WebApplication1\\We bApplication1\\Content\\D:\\PROGRAM \\List - 2018.xlsx"
это путь показывает при наведении мыши на fileLocation
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
12.12.2018, 09:10
Цитата Сообщение от moon-beauty Посмотреть сообщение
это путь показывает при наведении мыши на fileLocation
Ну вот, видите — путь неправильный:
C:\\Users\\Desktop\\WebApplication1\\Web Application1\\Content\\D:\\PROGRAM \\List - 2018.xlsx
0
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
12.12.2018, 11:18  [ТС]
путь я не сама прописываю, а он сам выводить "fileLocation". Как сделать чтобы он правильно прописывал путь?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
12.12.2018, 12:46
Лучший ответ Сообщение было отмечено OwenGlendower как решение

Решение

Цитата Сообщение от moon-beauty Посмотреть сообщение
он сам
"он сам" ничего не делает — он делает только то, что вы ему сказали делать.
Конкретно переменная формируется вот здесь:
C#
1
string fileLocation = Server.MapPath("~/Content/") + Request.Files["file"].FileName;
По факту у вас два пути:
C:\Users\Desktop\WebApplication1\WebApplication1\Content\
D:\PROGRAM \List - 2018.xlsx

Как должен выглядеть окончательный путь, по которому будет записываться файл?
Если нужно просто к первому пути добавить имя файла, то так:
C#
1
string fileLocation = Path.Combine(Server.MapPath("~/Content/"), Path.GetFileName(Request.Files["file"].FileName));
На выходе переменная fileLocation будет иметь такой вид:
C:\Users\Desktop\WebApplication1\WebApplication1\Content\List - 2018.xlsx
1
548 / 355 / 120
Регистрация: 17.08.2014
Сообщений: 1,351
12.12.2018, 12:47
moon-beauty,
вам во втором ответе дали ответ дело всего то переписать правильно код для правильного сложения пути.
перепишите 12 строку так
C#
1
2
3
4
5
  string fileLocation =
//объединяем пути
 Path.Combine( Server.MapPath("~/Content/") , 
//получаем имя файла с расширением из пути к файлу.
Path.GetFileName(Request.Files["file"].FileName));
Добавлено через 35 секунд
эть немного не успел)
1
0 / 0 / 0
Регистрация: 01.10.2018
Сообщений: 26
13.12.2018, 08:30  [ТС]
Большое спасибо за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.12.2018, 08:30
Помогаю со студенческими работами здесь

Получаю ошибку Media error: Format(s) not supported or source(s) not found
подскажите как исправить? загружаю видео с ПК на wp, после загрузки иду в папку куда загрузился файл и вижу веб.avi, названия видео было...

Ошибка: The given path's format is not supported. (перевод: Формат данного пути не поддерживается)
File.Create("С:\\Users\\Vlad\\Desktop\\new_file.txt"); Когда программа уже откампилировалась и выводит консоль то почти сразу же...

Сохранение изображения: System.NotSupportedException при использование в имени файла Date.Time
private void SaveOpenGlPole() { string time = DateTime.Now.ToString(); string str1, str2, str3; image = GetBitmap(); str1 =...

Advaned Format System в новых жестких дисках
Совсем недавно менял жесткий диск на своем ноутбуке, прикупил новенький Seagate ST9750420AS. Но вот тут то и ждала меня беда, новые жесткие...

System.Single.ToString(string format) окруляет число
Есть простой код: float d = -107479040f; string s = d.ToString("F7"); F7 как я понимаю это вещественное число с 7 знаками после...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru