标签: inputstream

ClassLoader getResourceAsStream返回null

我的项目目录结构(在Eclipse中):

MyProject/
    src/        --> "source directory" on Eclipse's classpath/buildpath
        com.me.myapp
            Driver
            myconfig.txt
Run Code Online (Sandbox Code Playgroud)

Driver,我有以下代码:

public class Driver {
    public static void main(String[] args) {
        InputStream is = ClassLoader.getSystemClassLoader.getResourceAsStream("myconfig.txt");
        if(is == null)
            System.out.println("input stream is null");
        else
            System.out.println("input stream is NOT null :-)");
    }
}
Run Code Online (Sandbox Code Playgroud)

当我运行这个时,我得到以下控制台输出:

input stream is null
Run Code Online (Sandbox Code Playgroud)

为什么?我是否放置myconfig.txt在错误的位置?我是否错误地使用了ClassLoader API?别的什么?提前致谢!

java eclipse inputstream classpath classloader

29
推荐指数
2
解决办法
6万
查看次数

在内存中创建一个Zip文件

我正在尝试压缩文件(例如foo.csv)并将其上传到服务器.我有一个工作版本,它创建一个本地副本,然后删除本地副本.我如何压缩文件,以便我可以发送它而无需写入硬盘驱动器并完全在内存中执行?

java memory zip inputstream

29
推荐指数
1
解决办法
3万
查看次数

如何使用弹簧发送附件使用InputStream的电子邮件?

情况是这样的:

首先,我们在内存中生成一个文件,我们可以得到一个InputStream对象,InputStream对象必须作为电子邮件的附件发送...语言是java,我们使用spring发送电子邮件.

我发现很多,但我找不到如何发送电子邮件附件使用InputStream ...我尝试这样做:

InputStreamSource iss = null;
                    iss = new InputStreamResource(new FileInputStream("c:\\a.txt"));
MimeMessageHelper message = new MimeMessageHelper(mimeMessage,
                        true, "UTF-8");
message.addAttachment("attachment", iss);
Run Code Online (Sandbox Code Playgroud)

但我们例外:

传入资源包含一个开放流:无效参数.JavaMail需要一个InputStreamSource,为每个调用创建一个新流.

java email spring inputstream

28
推荐指数
2
解决办法
3万
查看次数

使用RestTemplate获取InputStream

我正在使用URL类从中读取InputStream.有什么方法可以使用RestTemplate吗?

InputStream input = new URL(url).openStream();
JsonReader reader = new JsonReader(new InputStreamReader(input, StandardCharsets.UTF_8.displayName())); 
Run Code Online (Sandbox Code Playgroud)

我如何InputStream 使用RestTemplate而不是使用URL

java inputstream resttemplate

28
推荐指数
6
解决办法
3万
查看次数

Java中的null(输入/输出)流API的用例是什么?

使用Java 11,我可以初始化InputStream为:

InputStream inputStream = InputStream.nullInputStream();
Run Code Online (Sandbox Code Playgroud)

但我无法理解 ie 的潜在用例InputStream.nullInputStream或类似的API .OutputStreamOutputStream.nullOutputStream

从API Javadocs,我可以弄清楚它

返回一个新的InputStream读取任何字节.返回的流最初是打开的.通过调用close()方法关闭流.

后续调用close()无效.虽然流是开放的,available(),read(),read(byte[]),... skip(long),和transferTo()方法的行为都好像流的末尾已到达.

我进一步详细说明了这些说明:

有很多次我想使用需要作为目标OutputStream/Writer的参数来发送输出的方法,但是想要为其他效果静默执行这些方法.

这相当于Unix将命令输出重定向到/ dev/null,或者在DOS中将命令输出附加到NUL的能力.

然而,我无法理解陈述中声明的那些方法是什么...... 为了其他效果而默默地执行这些方法.(归咎于我没有动手使用API​​)

有人可以帮助我理解在可能的情况下借助示例获得这样的输入或输出流有什么用处吗?


编辑:我在进一步浏览时可以找到的类似实现之一是apache-commons'NullInputStream,它更好地证明了测试用例的合理性.

java inputstream outputstream apache-commons java-11

28
推荐指数
2
解决办法
927
查看次数

如何在Java中合并两个输入流?

在Java中有两个InputStream,有没有办法合并它们,所以你用一个InputStream结束,它给你两个流的输出?怎么样?

java io inputstream

27
推荐指数
2
解决办法
3万
查看次数

如何在Java/Groovy中将InputStream转换为BufferedImage?

是的,我是那么傻.我试图从各种食谱配方中将一些groovy代码粘在一起,我无法从Java/Groovy中的InputStream到BufferedImage.谷歌目前不是我的朋友.

java groovy bufferedimage inputstream

27
推荐指数
1
解决办法
3万
查看次数

从getInputStream正确关闭Java Process InputStream

我在文档中找不到对此的澄清.但是当我们有一个Process物体并且打电话时getInputStream(),

当我们完成它时,我们是否会得到一个我们应该明确关闭的新流?或者我们是否得到了与流程相关的流,我们不应该关闭流程,但流程是否会关闭它?

基本上,我们应该如何与我们获得的流进行交互Process.getInputStream()?关闭还是不关闭?

java inputstream process

27
推荐指数
3
解决办法
9332
查看次数

如何将类路径资源加载到byte数组?

我知道如何获取给定类路径资源的输入流,从输入流读取直到我到达终点,但它看起来像一个非常常见的问题,我想知道是否有一个我不知道的API,或者是一个库会让事情变得如此简单

byte[] data = ResourceUtils.getResourceAsBytes("/assets/myAsset.bin")
Run Code Online (Sandbox Code Playgroud)

要么

byte[] data = StreamUtils.readStreamToEnd(myInputStream)
Run Code Online (Sandbox Code Playgroud)

例如!

java io inputstream embedded-resource

27
推荐指数
5
解决办法
4万
查看次数

我必须关闭FileInputStream吗?

我是测试自动化的实习生.我正在使用Eclipse创建Junit代码并使用Eclipse运行.我正在使用FileInputStream函数从excel表中重新获取数据.

FileInputStream fi=new FileInputStream("c:\\search.xls");
Workbook w=Workbook.getWorkbook(fi);
Sheet s=w.getSheet(0);
Run Code Online (Sandbox Code Playgroud)

是否有必要关闭Inputstream功能?如果是这样,请指导我一些编码.

java file-io inputstream

26
推荐指数
5
解决办法
4万
查看次数