В PHP вы можете попробовать что-то вроде этого:
<code><?php
function csv2PhpArray($sFile,$sSeparator = ';'){
$arrCsv;
$arrCsvKeys;
$i = 0;
if (($handle = fopen($sFile, "r")) !== false) {
while (($arrRow = fgetcsv($handle, 1000, $sSeparator)) !== false) {
//Each row
$nLenRow = count($arrRow);
for ($j=0; $j < $nLenRow; $j++) {
if($i==0){
$arrCsvKeys[] = $arrRow[$j];
}else{
$arrCsv[$arrCsvKeys[$j]][] = $arrRow[$j];
}
}
if($i==0) $i++;
}
fclose($handle);
}
return $arrCsv;
}
function updateCsv($arrCsv,$sFile,$sSeparator = ';'){
$arrCsvKeys = array_keys($arrCsv);
$i = 0;
$nMaxKeys = count($arrCsvKeys);
$nMax = count($arrCsv[$arrCsvKeys['0']]);
$arrInput;
for($k=0;$k<$nMaxKeys;$k++){
$arrInput[$i][$k] = $arrCsvKeys[$k];
}
for($j=0;$j<$nMax;$j++){
$i++;
for($k=0;$k<$nMaxKeys;$k++){
$arrInput[$i][$k] = $arrCsv[$arrCsvKeys[$k]][$j];
}
}
$nMax = count($arrInput);
$fp = fopen($sFile, 'w');
for($i=0;$i<$nMax;$i++){
fputcsv($fp, $arrInput[$i]);
}
fclose($fp);
}
$arrCsv = csv2PhpArray('file.csv',';');
echo '<pre>';
var_dump($arrCsv);
echo '
';
$ nMax = count ($ arrCsv ['s']);
для ($ I = 0; $ г <$ Nmax; $ я ++) {
$ arrCsv ['s'] [$ i] = intval ($ arrCsv ['s'] [$ i]) + 10;
}
echo '<pre>';
var_dump($arrCsv);
echo '';
updateCsv ($ arrCsv, 'file2.csv', ';');
echo '
';
var_dump(csv2PhpArray('file2.csv',';'));
echo '
';
?>
Я положил два файла (file.csv и file2.csv), чтобы увидеть результаты обновления.
Я вижу, вы меняете ответ только на java, но я надеюсь, что это поможет вам.