//ファイルを開く public void OpenFile(string filePath) { //parameterファイルを開く string path = filePath; // pathをURIに変換 Uri.TryCreate(path, UriKind.Absolute, out uriCalcFile); // OpenOfficeファイルを開くためのおまじない // コンポーネントコンテキストの取得 localContext = Bootstrap.bootstrap(); // サービスマネージャーの取得 multiServiceFactory = (XMultiServiceFactory)localContext.getServiceManager(); // コンポーネントローダーの取得 loader = (XComponentLoader)multiServiceFactory.createInstance("com.sun.star.frame.Desktop"); // 非表示で実行するためのプロパティ指定 calcProp = new PropertyValue[1]; calcProp[0] = new PropertyValue(); calcProp[0].Name = "Hidden"; calcProp[0].Value = new uno.Any(true); // Calcファイルを開く doc = (XSpreadsheetDocument)loader.loadComponentFromURL(uriCalcFile.ToString(), "_blank", 0, calcProp); // シート群を取得 sheets = doc.getSheets(); }
//ファイルを閉じる public void CloseFile() { // Calcファイルを閉じる if (doc != null) { xCloseable = (XCloseable)doc; xCloseable.close(true); doc = null; } }