Tarvis sellainen bat-tiedosto saada aikaan joka ottaa tekstitiedostosta sanotaan teksti.txt tietyn kohda ja tulostaa sen (echo). Kun ei ohjelmointi lähde niin ei lähde vaikka hyvin yksinkertainen tämäkin on. Jollain for-funktiolla se pitäisi jotenkin saada mutta kun ei niin ei.
Tiedoston sisältö on tämä:
{
"a": "a42b34af",
"b": false,
"d": 25,
"e": true,
"f": true,
"g": [
{
Pitäisi saada ulos numero/kirjansarja "a42b34af" ilman lainausmerkkejä.
Tiedoston sisältö on tämä:
{
"a": "a42b34af",
"b": false,
"d": 25,
"e": true,
"f": true,
"g": [
{
Pitäisi saada ulos numero/kirjansarja "a42b34af" ilman lainausmerkkejä.
Vastaukset 2
Vanhimmat
For ei ole funktio.
Kannattaisi muutenkin varmaan tehä vaikka C:llä.
Lazarus on erittäin hyvä jos haluat tehdä nopeasti graafisella käyttöliittymällä varustetun ohjelman (saatavilla moniin käyttöjärjestelmiin).
Tuon voi tehdä Lazaruksella monin tavoin tässä yksi esim:
...
function lueTieto( TiedostonNimi, aluntunniste, lopuntunniste:string):string;
var
sl:TStringList;
s: string;
i: integer;
begin
sl := TStringList.Create ;
sl.LoadFromFile( TiedostonNimi );
s := sl.text;
FreeAndNil( sl );
i := ansipos( aluntunniste, s) length( aluntunniste );
Delete(s, 1, i-1 );
i := ansipos( lopuntunniste, s);
result := copy( s, 1, i-1 );
end;
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
s := lueTieto('testitxt.txt', '"a": "', '",' );
Memo1.Lines.Add( s );
end;
...
Kokeile tuolla ja voit parantaa sitä helposti vaikkapa näillä ohjeilla:
http://wiki.freepascal.org/Howto_Use_TOpenDialog/fi