簡體   English   中英

如何從Xcode中讀取不斷更新的文本文件中的數據?

[英]From Xcode, how do I read data from a text file that is constantly being updated?

我正在使用GPS模塊,該模塊正在通過串行RS232到USB接口將數據傳輸到Mac。 我編寫了一個objC程序,該程序將原始數據轉換為有意義的信息。

使用名為goSerial的程序,我可以將所有傳入的數據記錄到文本文件中。 我已經能夠使我的程序逐行讀取文本文件並處理數據。

我希望此過程是實時發生的,即,一旦接收到數據,它就會登錄到文本文件中,並且程序會讀取它。 此過程的第一部分自動發生,即不斷添加文本文件(未打開時)。 是否可以監視文本文件中的附加數據並僅讀取新行? 另外,這樣做是否會影響保存新的傳入數據的能力?

謝謝!!!

(此外,如果有人知道如何將串行數據直接發送到Xcode,請告訴我!)

您可以使用kqueue (也許使用包裝器,例如UKKQueue )來監視文件中的更改。

我不確定串行到USB如何影響事物,但是傳統上,Unix使用設備文件機制訪問串行設備,該機制將來自設備的輸入視為要讀取的文件。 您將使用NSFileHandle從Cocoa / Foundation中讀取文件。 您可能想檢出IORegistryExplorer應用程序,以查看設備的顯示方式。

您應該能夠創建一個Unix域套接字,然后可以打開goSerial應用程序(因為它看起來像fs上的普通文件)

然后從另一端在應用程序中逐行讀取。 這可能是最簡單的方法,或者也可以看看GNU coreutils中的尾巴來源,特別是-f函數(盡管想想更多,您可能希望看看FreeBSD實現的工作方式,因為我相信GNU版本使用一些特定於Linux的回調)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM