2013-11-26 3 views
3

как заменить источник изображения HTML-файл с именем папки в данном пути адресной строки в Visual Studio 2010как заменить источник изображения в HTML-файл с помощью vb.net

пожалуйста, кто может мне помочь с требуется логика будет очень ценна

+0

не могли бы вы объяснить больше? – edokan

+0

Мне нужно найти имя папки из пути, введенного в текстовое поле, и заменить исходный путь изображения html-файла. –

+0

Я понимаю, что у вас есть html-файл с тегом IMG, и вы хотите изменить его атрибут SRC. кроме этого, ничего. не могли бы вы объяснить больше, намного больше? – edokan

ответ

1

вы можете использовать два различных пути

1- String.Replace удалить каталог, но он может удалить больше, чем то, что вам нужно.

var sourceDir = txtPath.Text; // \\192.168.0.2\kpo\Employee-Backup\Jigar\6373889-6388505_6388663 
var html = File.ReadAllText("MyTest.html"); 

var cleanedHtml = string.Replace(html, source, "") 

2- Использование HtmlAgility библиотеки для загрузки HTML, найти IMG тегов и заменить SRC атрибут каждого IMG используя String.Replace. Труднее, но безопаснее.

обновление:

var separators = new char[] { 
    Path.DirectorySeparatorChar, 
    Path.AltDirectorySeparatorChar 
}; 

var pathParts = sourceDir.Split(separators); 

var root = string.Join("\\", pathParts.Take(pathParts.Length - 4)); 
var last4 = string.Join("\\", pathParts.Skip(pathParts.Length - 4)); 
+0

, но проблема в том, что текст, который я хочу заменить, не будет по умолчанию, он должен взять последние четыре папки из путь каждый раз, когда я изменяю путь в текстовом поле. –

+0

@jigar Я обновил свой ответ, чтобы показать, как найти последние четыре папки – edokan

+0

thanx для помощи приятелю моя проблема решена .... –

0
File.WriteAllText(TextBox1.Text & "\article.html", 
    File.ReadAllText(TextBox1.Text & "\article.html") 
     .Replace("src=""img", " src=""/ielx5/" & last & "/img") 
) 

Я сделал это и, наконец, suceeded. Спасибо за помощь.

Смежные вопросы