ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #2431  
Старый 24.05.2010, 15:24
Аватар для Byte_
Byte_
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
Провел на форуме:
351188

Репутация: 65
По умолчанию

Цитата:
Сообщение от mff  
Ну тексты разные будут всегда. Как при помощи JS ходить по строкам в текстарии и заменять их на нужные данные?
ну да, просто я не совсем понимаю, что за текст... в принципе можно просто через строчку добавлять в начало или ещё как... поясни что это за строки вводит пользователь?
 
Ответить с цитированием

  #2432  
Старый 24.05.2010, 15:45
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Byte_ туда будут вставлять название канала нижe URL всё с новой строки. Нужно будет к названию канала прибавлять "#EXTINF:1," потом ниже идет URL и так далее.
 
Ответить с цитированием

  #2433  
Старый 24.05.2010, 15:56
Аватар для Byte_
Byte_
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
Провел на форуме:
351188

Репутация: 65
По умолчанию

Цитата:
Сообщение от mff  
Byte_ туда будут вставлять название канала нижe URL всё с новой строки. Нужно будет к названию канала прибавлять "#EXTINF:1," потом ниже идет URL и так далее.
тогда всё просто пишу прямо тут, по этому могут быть ошибки.
Код:
var in;//сюда загоняем входные данные
var out;//вывод
in = in.split("\n");
var c = 0;
for(i=0,j=in.length;i<j;i++)
{
if(c == 1)
{
c=0; out = out + '#EXTINF:1,' + in[i] + "\n";
}else{
c=1; out = out + in[i] + "\n";
}
}
чуть не забыл про переходы на новую строку)

Последний раз редактировалось Byte_; 24.05.2010 в 16:02..
 
Ответить с цитированием

  #2434  
Старый 24.05.2010, 16:47
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Byte_ спасибо! полез пробовать!
 
Ответить с цитированием

  #2435  
Старый 24.05.2010, 18:38
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Цитата:
Сообщение от Byte_  
тогда всё просто пишу прямо тут, по этому могут быть ошибки.
Код:
var in;//сюда загоняем входные данные
var out;//вывод
in = in.split("\n");
var c = 0;
for(i=0,j=in.length;i<j;i++)
{
if(c == 1)
{
c=0; out = out + '#EXTINF:1,' + in[i] + "\n";
}else{
c=1; out = out + in[i] + "\n";
}
}
чуть не забыл про переходы на новую строку)
Заюзал, вот что на выходе получилось:
Код:
undefinedRai tre
#EXTINF:1,http://86.55.3.10:8036
Rai med
#EXTINF:1,http://86.55.3.10:8037
Попробую разобраться, спасибо!
 
Ответить с цитированием

  #2436  
Старый 24.05.2010, 20:55
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Byte_ всё заработало как часы! Большое спасибо! +5
 
Ответить с цитированием

  #2437  
Старый 26.05.2010, 14:53
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Есть код:
Код HTML:
var inp = document.getElementById("input").value;
inp = inp.split("\n");
var out="";
var c = 0;
for(i=0; i<inp.length; i++){
	if(c == 1){
		c=0;
		out = out + "\t\t\t" + '<location>' + inp[i] + '</location>' + "\n" + "\t\t" + '</track>' + "\n";
	}else{
		c=1;
		out = out + "\t\t" + '<track>' + "\n" + "\t\t\t" + '<title>' + inp[i] + '</title>' + "\n";
	}
}
				document.getElementById("output").value = '<?='<?xml version="1.0" encoding="UTF-8"?>'?>' + "\n" + '<playlist version="1" xmlns="http://xspf.org/ns/0/">' + "\n" + "\t" + '<trackList>' + "\n" + out  +  "\t" + '</trackList>' + "\n" + '</playlist>';
в FF и в Google Chrome всё отлично работает. Вставляю:
Код:
Беркова-ТВ
mms://217.199.212.109/video3/
Ibiza On TV
mms://81.174.67.45/ibizaontv
TMF Dance
mms://94.75.250.121:554/39987@662299?MSWMExt=.asf
Worm TV
mms://wms.global-streaming.net/04988
на выходе:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
	<trackList>
		<track>
			<title>Беркова-ТВ</title>
			<location>mms://217.199.212.109/video3/</location>
		</track>
		<track>
			<title>Ibiza On TV</title>
			<location>mms://81.174.67.45/ibizaontv</location>
		</track>
		<track>
			<title>TMF Dance</title>
			<location>mms://94.75.250.121:554/39987@662299?MSWMExt=.asf</location>
		</track>
		<track>
			<title>Worm TV</title>
			<location>mms://wms.global-streaming.net/04988</location>
		</track>
	</trackList>
</playlist>
все табуляции, всё как надо. А вот Opera и IE делают лишние переносы перед </title> и перед </location>:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
	<trackList>
		<track>
			<title>Беркова-ТВ
</title>
			<location>mms://217.199.212.109/video3/
</location>
		</track>
		<track>
			<title>Ibiza On TV
</title>
			<location>mms://81.174.67.45/ibizaontv
</location>
		</track>
		<track>
			<title>TMF Dance
</title>
			<location>mms://94.75.250.121:554/39987@662299?MSWMExt=.asf
</location>
		</track>
		<track>
			<title>Worm TV
</title>
			<location>mms://wms.global-streaming.net/04988</location>
		</track>
	</trackList>
</playlist>
Помогите решить вопрос, я так понимаю что то с inp = inp.split("\n");

 
Ответить с цитированием

  #2438  
Старый 26.05.2010, 15:15
Аватар для Byte_
Byte_
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
Провел на форуме:
351188

Репутация: 65
По умолчанию

Цитата:
Сообщение от mff  
Есть код:
Код HTML:
var inp = document.getElementById("input").value;
inp = inp.split("\n");
var out="";
var c = 0;
for(i=0; i<inp.length; i++){
	if(c == 1){
		c=0;
		out = out + "\t\t\t" + '<location>' + inp[i] + '</location>' + "\n" + "\t\t" + '</track>' + "\n";
	}else{
		c=1;
		out = out + "\t\t" + '<track>' + "\n" + "\t\t\t" + '<title>' + inp[i] + '</title>' + "\n";
	}
}
				document.getElementById("output").value = '<?='<?xml version="1.0" encoding="UTF-8"?>'?>' + "\n" + '<playlist version="1" xmlns="http://xspf.org/ns/0/">' + "\n" + "\t" + '<trackList>' + "\n" + out  +  "\t" + '</trackList>' + "\n" + '</playlist>';
в FF и в Google Chrome всё отлично работает. Вставляю:
Код:
Беркова-ТВ
mms://217.199.212.109/video3/
Ibiza On TV
mms://81.174.67.45/ibizaontv
TMF Dance
mms://94.75.250.121:554/39987@662299?MSWMExt=.asf
Worm TV
mms://wms.global-streaming.net/04988
на выходе:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
	<trackList>
		<track>
			<title>Беркова-ТВ</title>
			<location>mms://217.199.212.109/video3/</location>
		</track>
		<track>
			<title>Ibiza On TV</title>
			<location>mms://81.174.67.45/ibizaontv</location>
		</track>
		<track>
			<title>TMF Dance</title>
			<location>mms://94.75.250.121:554/39987@662299?MSWMExt=.asf</location>
		</track>
		<track>
			<title>Worm TV</title>
			<location>mms://wms.global-streaming.net/04988</location>
		</track>
	</trackList>
</playlist>
все табуляции, всё как надо. А вот Opera и IE делают лишние переносы перед </title> и перед </location>:
Код:
<?xml version="1.0" encoding="UTF-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
	<trackList>
		<track>
			<title>Беркова-ТВ
</title>
			<location>mms://217.199.212.109/video3/
</location>
		</track>
		<track>
			<title>Ibiza On TV
</title>
			<location>mms://81.174.67.45/ibizaontv
</location>
		</track>
		<track>
			<title>TMF Dance
</title>
			<location>mms://94.75.250.121:554/39987@662299?MSWMExt=.asf
</location>
		</track>
		<track>
			<title>Worm TV
</title>
			<location>mms://wms.global-streaming.net/04988</location>
		</track>
	</trackList>
</playlist>
Помогите решить вопрос, я так понимаю что то с inp = inp.split("\n");

я не уверен, нет возможности проверить всё, но попробуй перед split сделать replace \r
Код:
....
inp = inp.replace("\r","");
inp = inp.replace("\n\n","");//ещё можно на всякий случай =)
inp = inp.split("\n");
....
 
Ответить с цитированием

  #2439  
Старый 26.05.2010, 15:49
Аватар для mff
mff
Познавший АНТИЧАТ
Регистрация: 12.03.2008
Сообщений: 1,379
Провел на форуме:
5866479

Репутация: 1809


Отправить сообщение для mff с помощью ICQ
По умолчанию

Цитата:
Сообщение от Byte_  
я не уверен, нет возможности проверить всё, но попробуй перед split сделать replace \r
inp = inp.replace("\r","");
inp = inp.replace("\n\n","");//ещё можно на всякий случай =)
не помогло не то и не то

Проверил еще в Safari - всё работает отлично. Только IE и Opera делает эти переносы
 
Ответить с цитированием

  #2440  
Старый 26.05.2010, 16:28
Аватар для emmy
emmy
Новичок
Регистрация: 12.10.2009
Сообщений: 20
Провел на форуме:
14519

Репутация: 41
По умолчанию

Программисту нужна подсказка, как работать со строками =( Жуть
Код:
var lines = inp.split(/[\r\n]+/);
И ещё, собирать xml конкатенацией строк в js не тру, когда у вас dom на C/C++ реализован.

Последний раз редактировалось emmy; 26.05.2010 в 16:35..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Delphi, .NET, Asm 6762 17.06.2010 21:23
Proxy FAQ foreva Чужие Статьи 12 04.01.2008 12:15
ЕсТь ВоПрос Guma Чаты 4 26.10.2005 21:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ