2015-04-17 31 views
1

基本上一行看起來像這樣:'數字編號文本文本文本',並用空格分隔它們。數字是可以的,因爲readln()只是在空格之後將它們分開,但它將3個文本讀爲一個。我怎樣才能將它們讀入單獨的字符串?Pascal將一行文字讀入單獨的字符串

+0

您可能意思是說您使用** read()**而不是readln()。 readln()總是讀取直到行的結尾(也是數字)。不幸的是你閱讀()字符串也讀到行的末尾(不像數字)。因此,唯一的解決方案是在您讀取代碼後分割文本。 – Rik

+3

您可以使用SysUtils單元中的[sscanf](http://www.freepascal.org/docs-html/rtl/sysutils/sscanf.html)函數。只需使用'ReadLn'讀取整行,然後使用'sscanf'將其分割爲變量。 – Abelisto

+0

更多Pascal like is to use TStringList.delimtedtext –

回答

1

如果有人面臨這個問題,下面是我剛剛發現的一個非常簡單的解決方案:將整個事情讀入一個字符串。然後pos('',stringsname),然後複製('spacepos'+ 1,200),然後從第一個字符串和voilá中刪除(spacepos,200)。

相關問題