Работа с файлом

Печать RSS
68


Чатланин
0
Есть файл file.txt в этом файле есть уникальная запись(одна такая) серединка записи выглядит так text1,5;text2,9;text3,15;text4,12; и так далее , цыфра после запятой должна уменьшатся только в одной записи к примеру здесь text1,5; к примеру на единицу и когда будет Ноль(0) то к примеру text1,0; должен удалится . Как такое реализовать ?
Изменил: Сергей (05.10.2013 / 16:22)

Чатланин
0
Могу на C++ или на Паскале написать... И спасибо, что хорошо объяснил, слишком много "к примеру", я запутался в них.

Чатланин
0
2. Аварский, нужно на php

Чатланин
0
Пиши в ICQ что именно нужно... Поможем...

Чатланин
0
Общем задумка из первого поста реализована этим Аварский товарищем.
Выкладываю сюда код вдруг кому понадобится.
 <?
function f($str, $path_file){
$arr_str = file($path_file);
//Поиск нужной строки
for ($i=0; $i<count($arr_str); $i++){
$str2 = stripos($arr_str[$i], $str);
if ($str2!==false) break;
}

//Выделяем из строки число и уменьшаем на единицу
$ch = intval(substr($arr_str[$i], strlen($str)+1));
$ch2 = $ch-1;

//Записываем данные обратно в файл.
if ($ch2!=0){
$arr_str[$i] = str_replace($ch, $ch2, $arr_str[$i]);
$file = fopen("sites.txt", "w");
for ($j=0; $j<count($arr_str); $j++){
fwrite($file, $arr_str[$j]);
}
} else {
$file = fopen("sites.txt", "w");
for ($j=0; $j<count($arr_str); $j++){
if ($j==$i) continue;
fwrite($file, $arr_str[$j]);
}
}
fclose($file);
}
$str = "site.ru";
$path_file = "sites.txt";
f($str, $path_file);
?>
сам файл txt выглядит так

site2.ru,60
site.ru,50
site3.ru,40
и так далее .
Стикеры / Теги / Правила / Топ тем / Топ тем / Поиск