簡體   English   中英

從excel Feed獲取實時值

[英]Getting real time values from an excel feed

您好我的股票經紀人的應用程序有一個名為“Start excelfeed”的按鈕,它打開一個excel文件,然后實時更新收到的價格。 我希望將這些價格提取到我的應用程序(Java)中,但經過多次嘗試使用jxl和poi我發現它只提取上次保存excel文件時發生的值。 有沒有可能實時提取這些價格的方法? 我不確定他們使用哪種方法來提供excel文件,除了他們的應用程序是用C#編寫的。

他們正在使用DDE技術,您應該使用Excel自動化將數據從Excel中提取到您的應用程序中。

您可以通過按Alt + F11查看“啟動excelfeed”按鈕后面的VBA代碼...然后您可以檢查excel宏如何點擊數據源並嘗試在Java中進行調整

[編輯] @Zico抱歉,我說錯了。 在那種情況下,我會嘗試通過像Java489041建議的Java Robot Class自動化它,或者你可以啟動wireshark並嘗試窺探網絡流量

在過去,我們使用DDE鏈接。 有可能是你的股票經紀人插件使用恰恰相反。

從java使用DDE的機會相當渺茫(接近於零),因為它是特定於Windows的。 但是,可能還有其他方法(如COM組件或TCP / IP連接)。 我建議你從像Excelfeed這樣的股票經紀人來源獲取價值,而不是通過Excel。

當然,問題在於您不會從Excel插件的供應商那里獲得幫助。 如果事情就像他們8年前一樣,他們在購買Excel插件時花費很多,並且真的不想幫助你編程反對:)

最壞的情況是,您可以使用Java Robot類創建Excel電子表格,將Excel電子表格另存為CSV文件,然后從Java程序中讀取CSV文件。

您可以使用Obba等解決方案來完成此任務。 Obba允許直接從Excel訪問運行“Obba Server”的Java虛擬機。

對於您的問題,您必須從電子表格“創建”您的應用程序(加載jar,創建一個代表您的應用程序的對象 - 例如在單獨的線程中啟動它)。 然后,您可以從Excel中提供應用程序... - 在這種情況下,Excel將擴展您的應用程序的“控制程序”。 但是,如果手動啟動Obba Server進程,則關閉並重新打開Excel時,該進程將繼續運行。

暫無
暫無

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

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