Blazor WASM 和 MPXJ Java.io.inputstream

Blazor WASM and MPXJ Java.io.inputstream

提问人:user2019508 提问时间:8/17/2023 更新时间:8/17/2023 访问量:26

问:

我是 Blazor 的新手,但不是 mpxj。我已设法创建 Blazor 代码以将本地文件打开到流中。然后尝试使用 ikvm.io.InputStreamWrapper(stream); 转换为 Java 流。当我调试流包含数据时,但转换后javastream为空。任何帮助表示赞赏。

@using net.sf.mpxj;
@using Microsoft.AspNetCore.Components.Forms;

@page "/"

<PageTitle>Index</PageTitle>

<InputFile OnChange="@SelectFile" accept=".xer"/>

 
<button type="button" @onclick="ReadFile">Read file</button>

@code
{
    IBrowserFile? file;
    int MAXSIZE = 500000;


    private void SelectFile(InputFileChangeEventArgs e)
    {
        file = e.File;
    }

    private async System.Threading.Tasks.Task ReadFile()
    {
        var stream = new MemoryStream();
        await file.OpenReadStream(MAXSIZE).CopyToAsync(stream);

        java.io.InputStream javaStream = new ikvm.io.InputStreamWrapper(stream);

        net.sf.mpxj.reader.UniversalProjectReader reader = new net.sf.mpxj.reader.UniversalProjectReader();
        ProjectFile projectFile = reader.read(javaStream);
    }

}

Blazor Java-IO MPXJ

评论

0赞 Jon Iles 8/21/2023
MPXJ 附带了一个单独的包装类,其目的与 .可能值得一试?或者,您可以将文件名传递给读取器类,而不是流?InputStreamWrapper

答: 暂无答案