3

プロパティと値のペアを含む txt ファイルにプロパティと値のペアを追加したいのですが、プロパティはアルファベット順に並べ替える必要があります。プロパティは角かっこと下の行の値の間にあります。これはサンプル ファイルです。その上で、「#」で始まるコメント行を無視したいと思います。

#
[system]
# 
programming 
#
[information] 
#
application

お気に入り:-

function [] = updateFile( fileName,property,propertyValue )

% all inputs in strings
%
rfh = fopen( fileName, 'r' ); % read handle
tname = tempname(); % temporary file name
wfh = fopen( tname, 'w' )

この例では、「システム」はプロパティであり、「プログラミング」はその値です。同様に、「情報」は別のプロパティであり、「アプリケーション」はその値です。

プロパティと値のペアを使用して関数を呼び出し、新しいプロパティと値のペアで txt ファイルを更新したいと考えています。

4

1 に答える 1

1

ファイルを更新しているので、「追加」モードで開く必要があります。sort関数を使用してデータを並べ替えます。変数propertypropertyValueがセル配列であると仮定すると、コードは次のようになります。

function [] = updateFile( fileName,property,propertyValue )

% all inputs in strings

fid = fopen(fileName, 'a' ); % file handle
[property_sorted,sort_index] = sort(property); % sort file
for count = 1:length(sort_index)
    fprintf(fid,'%s\n%s\n',property_sorted(count),propertyValue(sort_index(count)));
end

fclose(fid);

詳細については、sort ( doc sort) のドキュメントを参照してください。

于 2013-01-19T04:08:50.287 に答える