Funktionsblock FS_READLINE

Funktionsblocket FS_READLINE läser data radvis från en fil.

Varning: Vid läsning av mycket stora filer kan SPS eller hela systemet krascha och inte startas igen.

Anmärkning: Den maximala läsliga storleken på en rad är av säkerhetsskäl 1024'000 bytes.

Filsystemet måste ha initierats tidigare med hjälp av FS_INIT. Alla operationer sker asynkront per upprättat lagringsmedium.

Ingång READ

Vid en positiv flank läses data från lagringsmediet.

Ingång DEV

Definierar enheten, varifrån filerna ska åtkommas. Enheten används per projekt och kan hanteras i menyn under Projekt Extern lagring.

Ingång PATH

Anger sökvägen till filen på lagringsmediet. Sökvägen motsvarar en Unix-filsökväg i UTF-8-format, om detta stöds. Sökvägen visas som följer:

Mapp/Undermapp/Fil.txt

Ingång LINE

Definierar raden som ska läsas. Den första raden börjar med nummer 0.

Ingång ENDING

Definierar radslutet. Detta anges med escape-tecken: "\r\n". Om ingången inte definieras, antas "\n".

Följande tecken beaktas med escape:

  • "\t" (ASCII 9 (0x09)), ett tabulatortecken.
  • "\n" (ASCII 10 (0x0A)), en radmatning (Line Feed).
  • "\r" (ASCII 13 (0x0D)), ett vagnreturtecken (Carriage Return).
  • "\0" (ASCII 0 (0x00)), NUL-byte.
  • '\xEF' Skrivform för bytes.

Anmärkning: För att även binära tecken, som t.ex. '\xEF' kan definieras, måste dessa anges i enkla citattecken.

Utgång DONE

Utgången ger vid lyckad operation en puls för att utföra nästa operation. Pulsen sker när processen är klar, även om ett fel har inträffat.

Utgång DATA

Ger tillbaka den lästa raden, inklusive radslutet. Tillståndet sparas för senare användning.

Utgång EOF

Om filens slut har nåtts, är ingången sann.

Utgång BOM

Om UTF-8 Byte Order Mark hittats, är utgången sann. BOM bestäms vid varje läsoperation.

Utgång ERROR

Ger i felet ett meddelande med en felmeddelande. Detta är FALSE, om inget fel har inträffat. Tillståndet sparas för senare användning.

Möjliga orsaker:

  • Tjänsten för lagringsmediet har inte startats.
  • Lagringen har inte initierats.
  • Inloggningsuppgifterna är ogiltiga.
  • Den avlägsna servern kunde inte nås.
  • Lagringsmediet existerar inte.
  • Angiven sökväg är ogiltig.