Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.76/21: Рейтинг темы: голосов - 21, средняя оценка - 4.76
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20

Замена части строки XML-файла

20.02.2019, 16:26. Показов 5413. Ответов 38
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Помогите, пожалуйста, заменить часть строки xml файла, с помощью bat файла.

вот образец:
<?xml version="1.0" encoding="UTF-8"?><external-systems xmlns="ееее">
<service-provider id="60385241">
<processing-provider>
<service-type/>
</processing-provider>
<property value="5" key="exciseValidationServerTimeout" id="228959817"/>
<property value="30" key="egais_timeout" id="177988722"/>
<property value="0" key="depthInDays" id="228959814"/>
</service-provider>
<service-provider name="Set:Prisma" settingsOnShop="false" id="426843810">
<processing-provider localized-name="Set:Prisma" name="prismabridge">
<service-type localized-name="Призма" name="prismabridge"/>
</processing-provider>
<property value="5.5.5" key="prisma_url" id="180200581"/>
</service-provider>
</external-systems>


эти символы нужно заменить на значение переменной.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.02.2019, 16:26
Ответы с готовыми решениями:

Замена части строки XML-файла
Здравствуйте. Помогите, пожалуйста, заменить часть строки xml файла, с помощью bat файла. вот образец: &lt;request&gt; ...

Вывод заданной части определённой строки каждого XML-файла в указанной папке
Добрый день! Есть папка, в которую закачиваются файлы с ftp несколько раз в день. Названия файлов типа:3143719278_1605201290029.xml ...

Замена части имени файла
Всем доброго времени суток! столкнулся с такой задачей, нужно автоматизировать процесс замены части названия файла а именно: исходный:...

38
 Аватар для ZoOoO
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
21.02.2019, 12:49
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от alpap Посмотреть сообщение
Ну вот и приехали в начало.
1.xml, если содержит кириллицу (в вашем примере содержит), а кодировку имеет utf-8 и однозначно поломается при перезаписи, также поломается форматирование файла xml. Не спрашиваю согласны вы с этим или нет, а утверждаю что делать это (изменение данных) надо или отдельной утилитой или powershell или vbs/js, вы с помощью cmd все угробите, в штатном блокноте вы даже в кодировке 866 не сможете его сохранить, а на той стороне еще перекодировать надо?
Надо брать каждую строку, находить нужную, делать в ней замену (или переписывать на новую) и эту каждую строку записывать в новый файл 1.xml, а старый удалять или во временный файл и удалять а временный менять на 1.xml, но неважно, кодировка и форматирование точно пострадают, а это не просто слова - пострадают данные, можно допустить ошибки, у cmd сложности с записью спецсимволов коих в xml хватает или что еще будет на момент когда все работало.
Он как бы наверно прав.Я не знаю.Но батник я написал)Ради спортивного интереса.
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
@echo off
Setlocal EnableDelayedExpansion
set a=99
for  %%c in (*.xml) do (
 
call :1 "%%c"
)
pause
:1
if !a!==102 (set a=99)
if !b!==11  (set b=0)
set /a a+=1
set /a b+=1
set "dest=10.%a%.%b%.37"
for /f "usebackq delims=" %%d in (%1) do (
set d=%%d
echo !d:10.101.50.37=%dest%!>>$
)
 
move $ %1
 
exit /b
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
21.02.2019, 12:54
iRas, не успел исправить. Мне нужен вывод
Windows Batch file
1
2
3
4
5
6
7
8
for /l %%I in (100 1 102) do (
 for /l %%Q in (1 1 99) do (
  for /l %%P in (1 1 8) do (
   >>file.txt (@ECHO y|pscp.exe -pw "324012" -r -scp -unsafe -P 22 tc@10.%%I.%%Q.2%%P:%send_from% scanlog10.%%I.%%Q.2%%P || ECHO. - ERROR)
  )
 )
)
pause
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 12:56
Цитата Сообщение от iRas Посмотреть сообщение
количество известно. их 3.
В данном случае, хоть 33

Цитата Сообщение от iRas Посмотреть сообщение
есть шаблонный файл. в нем указан 1 адрес в 3-х местах. 10.101.50.37. его нужно заменить
На PowerShell это делается так:

PowerShell
1
2
3
4
5
6
7
$in  = 'c:\temp\1.xml'
$out = 'c:\temp\2.xml'
$dst = '10.10.10.10'
 
[xml]$xml = Get-Content -Path $in -Encoding UTF8
$xml.GetElementsByTagName('property') |? Value -Match '(^|/)10\.101\.50\.37(:|$)' |% {$_.value = $dst}
$xml.Save($out)
1
 Аватар для ZoOoO
226 / 211 / 70
Регистрация: 09.02.2016
Сообщений: 1,040
21.02.2019, 13:01
И там 11 на 10 надо исправить.
А так да.Батники записывают в блокнот.А блокнот сохраняет в кодировке 1251.Но насколько я понимаю,<?xml version="1.0" encoding="UTF-8"?> это инфа для браузера.Это как бы мои знания.
0
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
21.02.2019, 13:05  [ТС]
Цитата Сообщение от alpap Посмотреть сообщение
Ну вот и приехали в начало.
1.xml, если содержит кириллицу (в вашем примере содержит), а кодировку имеет utf-8 и однозначно поломается при перезаписи, также поломается форматирование файла xml. Не спрашиваю согласны вы с этим или нет, а утверждаю что делать это (изменение данных) надо или отдельной утилитой или powershell или vbs/js, вы с помощью cmd все угробите, в штатном блокноте вы даже в кодировке 866 не сможете его сохранить, а на той стороне еще перекодировать надо?
Надо брать каждую строку, находить нужную, делать в ней замену (или переписывать на новую) и эту каждую строку записывать в новый файл 1.xml, а старый удалять или во временный файл и удалять а временный менять на 1.xml, но неважно, кодировка и форматирование точно пострадают, а это не просто слова - пострадают данные, можно допустить ошибки, у cmd сложности с записью спецсимволов коих в xml хватает или что еще будет на момент когда все работало.
спасибо за пояснения. мы можем внутри цикла подключить выполнение команды из powershell?


Цитата Сообщение от alpap Посмотреть сообщение
а что вы выводите строкой?
Windows Batch file
Выделить код
1
pscp.exe -pw "324012" -r -scp -unsafe -P 22 tc@10.%%I.%%Q.2%%P:%send_from% scanlog10.%%I.%%Q.2%%P
pscp отправляет файл и дописывает статус в лог

Добавлено через 3 минуты
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
На PowerShell это делается так:
это можно внутри моего батника с циклами сделать?
что бы $dst = '10.10.10.10' бы не статическим а динамическим ?
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 13:08
Цитата Сообщение от iRas Посмотреть сообщение
мы можем внутри цикла подключить выполнение команды из powershell?
Можно попробовать всё переписать на PS Если вы полностью опишите, что должен делать этот скрипт.

Вот, например, что это за таблица умножения?

FOR %%I IN (100 101 102) DO (
FOR %%Q IN (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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99) DO (
FOR %%P IN (1 2 3 4 5 6 7 8) DO
Добавлено через 1 минуту
Цитата Сообщение от iRas Посмотреть сообщение
что бы $dst = '10.10.10.10' бы не статическим а динамическим
По какому алгоритму должен формироваться $dst?
0
21.02.2019, 13:11

Не по теме:

Цитата Сообщение от KDE777 Посмотреть сообщение
Без всяких циклов
Это что же это делается-то, на святое решил замахнуться, вражина повершелловская!

0
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
21.02.2019, 13:21  [ТС]
Цитата Сообщение от KDE777 Посмотреть сообщение
Вот, например, что это за таблица умножения?
есть много подсетей.
10.100.1.0 - 10.100.99.0
10.101.1.0 - 10.101.99.0
10.102.1.0 - 10.102.99.0

в каждой подсети по 8 хостов
вместо .0
21 22 23 24 25 26 27 28

например
10.101.48.25 - это пятый хост в подсети 10.101.48.0

эта таблица умножения - позволяет перебрать все хосты по маске 10.%%I.%%Q.2%%P

Добавлено через 4 минуты
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
По какому алгоритму должен формироваться $dst?
алго выше описан
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 14:21
Цитата Сообщение от iRas Посмотреть сообщение
есть много подсетей.
10.100.1.0 - 10.100.99.0
10.101.1.0 - 10.101.99.0
10.102.1.0 - 10.102.99.0
в каждой подсети по 8 хостов вместо .0
21 22 23 24 25 26 27 28
эта таблица умножения - позволяет перебрать все хосты по маске 10.%%I.%%Q.2%%P
На PowerShell это выглядит так:

PowerShell
1
100..102 |% {$a = "10.$_"; 1..99 |% {$b = "$a.$_"; 21..28 |% {"$b.$_" } } }
Итак, 2376 IP мы получили:

PowerShell
1
2
3
$Clients = 100..102 |% {$a = "10.$_"; 1..99 |% {$b = "$a.$_"; 21..28 |% {"$b.$_" } } }
$Clients | select -First 16; '...'; $Clients | select -Last 16
$Clients.Count
Кликните здесь для просмотра всего текста
Code
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
10.100.1.21
10.100.1.22
10.100.1.23
10.100.1.24
10.100.1.25
10.100.1.26
10.100.1.27
10.100.1.28
10.100.2.21
10.100.2.22
10.100.2.23
10.100.2.24
10.100.2.25
10.100.2.26
10.100.2.27
10.100.2.28
...
10.102.98.21
10.102.98.22
10.102.98.23
10.102.98.24
10.102.98.25
10.102.98.26
10.102.98.27
10.102.98.28
10.102.99.21
10.102.99.22
10.102.99.23
10.102.99.24
10.102.99.25
10.102.99.26
10.102.99.27
10.102.99.28
2376


Теперь каждый из этих IP нужно подставить в шаблонный xml?

Добавлено через 16 минут
Если да, тогда вот так мы 2376 раз создаём новый xml-файл:

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
$in  = 'c:\temp\1.xml'
$out = 'c:\temp\2.xml'
$txt = Get-Content -Path $in -Encoding UTF8
 
100..102 |% {$a = "10.$_"; 1..99 |% {$b = "$a.$_"; 21..28 |% {
    
    $ip = "$b.$_"; [xml]$xml = $txt
 
    $xml.GetElementsByTagName('property') |? Value -Match '(^|/)10\.101\.50\.37(:|$)' |% {$_.value = $ip}
    $xml.Save($out)
    
} } }
0
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
21.02.2019, 14:23  [ТС]
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
Теперь каждый из этих IP нужно подставить в шаблонный xml?
да.

а после подстановки отправить его на хост (линукс) командой
pscp.exe -pw "111" -r -scp -unsafe -P 22 1.xml tc@_IPADDRESS_:/home/storage/

и лог отправки (в т.ч. ошибки) записать в файл, что бы отследить статус
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 14:56
Цитата Сообщение от iRas Посмотреть сообщение
да.
а после подстановки отправить его на хост (линукс) командой
pscp.exe -pw "111" -r -scp -unsafe -P 22 1.xml tc@_IPADDRESS_:/home/storage/
и лог отправки (в т.ч. ошибки) записать в файл, что бы отследить статус
Попробуйте так:

PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$in  = 'c:\temp\1.xml'
$out = 'c:\temp\2.xml'
$log = 'c:\temp\log.txt'
$txt = Get-Content -Path $in -Encoding UTF8
 
100..102 |% {$a = "10.$_"; 1..99 |% {$b = "$a.$_"; 21..28 |% {
    
    $ip = "$b.$_"; [xml]$xml = $txt
 
    $xml.GetElementsByTagName('property') |? Value -Match '(^|/)10\.101\.50\.37(:|$)' |% {$_.value = $ip}
    $xml.Save($out)
 
    $result = Invoke-Expression "pscp.exe -pw '111' -r -scp -unsafe -P 22 $out tc@_$ip`_:/home/storage/"
    
    "$(date) LASTEXITCODE: $LASTEXITCODE" | Add-Content $log -Encoding UTF8
    $result | Add-Content $log -Encoding UTF8
    
} } }
Для тестов лучше взять IP только одного хоста...
1
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
21.02.2019, 17:55  [ТС]
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
Попробуйте так:

запускаю, и ничего не происходит
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 18:15
Цитата Сообщение от iRas Посмотреть сообщение
запускаю, и ничего не происходит
Ну так, на экране ничего и не должно появляться...

Добавлено через 2 минуты
А если так - запустить powershell_ISE, создать новый сценарий, вставить туда скрипт, задать нужные пути, нажать ctrl+A и затем F8

Кликните здесь для просмотра всего текста
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
$in  = 'c:\temp\1.xml'
$out = 'c:\temp\2.xml'
$log = 'c:\temp\log.txt'
$txt = Get-Content -Path $in -Encoding UTF8
 
100..102 |% {$a = "10.$_"; 1..99 |% {$b = "$a.$_"; 21..28 |% {
    
    $ip = "$b.$_"; [xml]$xml = $txt
 
    $xml.GetElementsByTagName('property') |? Value -Match '(^|/)10\.101\.50\.37(:|$)' |% {$_.value = $ip}
    $xml.Save($out)
 
    $result = Invoke-Expression "pscp.exe -pw '111' -r -scp -unsafe -P 22 $out tc@_$ip`_:/home/storage/"
    $result
    
    "$(date) LASTEXITCODE: $LASTEXITCODE" | Add-Content $log -Encoding UTF8
    $result | Add-Content $log -Encoding UTF8
    
} } }
0
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
21.02.2019, 18:21  [ТС]
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
А если так - запустить powershell_ISE, создать новый сценарий, вставить туда скрипт, задать нужные пути, нажать ctrl+A и затем F8
переименовать файл в ps1 и запустить недостаточно?
я поправил пути. только файла log.txt нет. он будет создан автоматически?
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
21.02.2019, 18:28
Цитата Сообщение от iRas Посмотреть сообщение
переименовать файл в ps1 и запустить недостаточно?
С запуском ps1-связано несколько нюансов, например ExecutionPolicy + в ISE намного удобнее отлаживать скрипты.

Добавлено через 1 минуту
Цитата Сообщение от iRas Посмотреть сообщение
только файла log.txt нет. он будет создан автоматически?
Да, будет.
0
0 / 0 / 0
Регистрация: 31.05.2016
Сообщений: 20
22.02.2019, 11:31  [ТС]
KDE777,
Цитата Сообщение от KDE777 Посмотреть сообщение
С запуском ps1-связано несколько нюансов, например ExecutionPolicy + в ISE намного удобнее отлаживать скрипты.
благодарю. запустилось. файл изменился. но не совсем корректно.

1. нам ведь нужно заменить значения в трех строчках
<property value="http://10.8.0.100:9000" key="exciseValidationServerAddress" id="228959816"/>
<property value="http://10.8.0.100:8080/xml" key="egais_url" id="177988358"/>
<property value="10.8.0.100" key="prisma_url" id="180200582"/>

при замене сохранить окончания, выделенные красным.
сейчас все заменяется на единое значение IP.

2. можно ли оставить текущий преебор ip аресов, но значение, которое нужно подставлять немного видоизменить?
сейчас подставляется значение текущего ip адреса. а нужно подставлять текущую подсеть, но на конце 37 адрес.
например:
перебираем хост 10.100.4.21
подставляем в файл везде значения 10.100.4.37
файл отправляем в текущий хост 10.100.4.21

по сути, все все адреса от 21 до 28 нужно отправить одинаковый файл с 37 адресом текущей подсети.

3. как зашедулить выполненение скрипта?
0
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
22.02.2019, 12:01
Цитата Сообщение от iRas Посмотреть сообщение
1. нам ведь нужно заменить значения в трех строчках
<property value="http://10.8.0.100:9000" key="exciseValidationServerAddress" id="228959816"/>
<property value="http://10.8.0.100:8080/xml" key="egais_url" id="177988358"/>
<property value="10.8.0.100" key="prisma_url" id="180200582"/>
при замене сохранить окончания, выделенные красным.
сейчас все заменяется на единое значение IP.
2. можно ли оставить текущий преебор ip аресов, но значение, которое нужно подставлять немного видоизменить?
сейчас подставляется значение текущего ip адреса. а нужно подставлять текущую подсеть, но на конце 37 адрес.
например:
перебираем хост 10.100.4.21
подставляем в файл везде значения 10.100.4.37
файл отправляем в текущий хост 10.100.4.21
по сути, все все адреса от 21 до 28 нужно отправить одинаковый файл с 37 адресом текущей подсети.
PowerShell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$in  = 'c:\temp\1.xml'
$out = 'c:\temp\2.xml'
$log = 'c:\temp\log.txt'
$txt = Get-Content -Path $in -Encoding UTF8
 
100..102 |% {$a = "10.$_"; 1..99 |% {
 
    $b = "$a.$_"; [xml]$xml = $txt
 
    $xml.GetElementsByTagName('property') |? Value -Match '(?:^|/)10\.101\.50\.37(?:$|:)' |% {$_.value = $_.value -replace '10\.101\.50',$b}
    $xml.Save($out)
 
    21..28 |%{
    
    $ip  = "$b.$_"
    
    $result = Invoke-Expression "pscp.exe -pw '111' -r -scp -unsafe -P 22 $out tc@_$ip`_:/home/storage/"
    "$(date) LASTEXITCODE: $LASTEXITCODE" | Add-Content $log -Encoding UTF8
    $result | Add-Content $log -Encoding UTF8
    
} } }
1
 Аватар для KDE777
1887 / 1109 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
22.02.2019, 12:07
Цитата Сообщение от iRas Посмотреть сообщение
как зашедулить выполненение скрипта?
Создать задание, которое будет запускать powershell.exe, со строкой аргументов:

-ExecutionPolicy Bypass -file "C:\Scripts\Script.ps1"

0
2 / 2 / 0
Регистрация: 22.11.2017
Сообщений: 39
05.10.2023, 06:53
Ребята есть выгрузка из планировщика задачи.
надо <UserId>Domain\User</UserId>, заменить на <UserId>Domain\pc%computername:~4,6%</UserId>
может ли кто мне помочь?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.10.2023, 06:53

Замена части строки в текстовом файле
Добрый вечер. Необходима помощь в написании bat, который бы заменил: &quot;restore_ps&quot;: на &quot;restore_ps&quot;: Учитывая что...

Замена определённой части имени каждого файла из заданного каталога
Прошу помощи! Нужно в имени файла заменить только 2015 на 2017. Текст находится в середине имени файла. Например: админ 2015 суд.doc...

Замена части строки файла
Всем привет!!! есть файл(1.txt) с примерным текстом #@# 3686|Иванов |07.07.2014|15.07.2014|0| | . | . | I - 16...

Замена строки (целиком), найденная по части строки
Добрый день! Необходимо в файле найти строку по ее части, и заменить ее (строку целиком на новое значение). файл: ...

Замена части строки
Дано 3 строки: a,b,c. Строка а включает в себя строку b. В строке а нужно найти строку b и заменить на строку с. например: ...


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

Или воспользуйтесь поиском по форуму:
39
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru