Tag: io

如何在Scala中将文件读取为字节数组

我可以find大量的例子,但他们似乎主要依赖Java库或只读字符/行/等。 我只是想读一些文件,并与scala库获得一个字节数组 – 有人可以帮我吗?

如何删除Java中的目录内容?

枚举一个目录后,我现在需要删除所有的文件。 我用了: final File[] files = outputFolder.listFiles(); files.delete(); 但是这并没有删除目录。

当文件存在时,File.exists()返回false

我遇到了一个我似乎无法find任何逻辑的bug。 我有这个File对象,它是这样创build的: File file = new File("utilities/data/someTextFile.txt"); 然后我做file.exists() ,它返回false ( file.exists() )。 如果找不到文件,我将f.getAbsolutePath()logging到文件中。 当我看着path,似乎没问题。 我可以将完整的path复制粘贴到Windows的“运行”窗口中,并且文件可以正常打开。 该文件始终存在,在运行我的应用程序期间不会被删除或更改。 它位于本地机器。 这似乎只发生在某些情况下。 我可以在任何时候重现错误,但是我确定文件对象的path不会被我为重现错误所做的操作改变。 什么可以导致file.exists()返回false? 这是否与权限或文件locking等有关?

从Java中的string在内存中创build一个File对象

我有一个接受File作为参数的函数。 我不想创build/写入一个新的文件(我没有文件系统的写入权限),以便将我的string数据传递给函数。 我应该添加string数据不存在于一个文件(所以我不能从一个文件中读取我的数据)。 我可以使用Streams并将它们“投射”到File对象吗?

将文件列入与Java中的模式匹配的目录中

我正在寻找一种方法来获得在给定的目录中匹配模式(pref regex)的文件列表。 我已经find了一个在线教程,使用apache的commons-io软件包,下面的代码: Collection getAllFilesThatMatchFilenameExtension(String directoryName, String extension) { File directory = new File(directoryName); return FileUtils.listFiles(directory, new WildcardFileFilter(extension), null); } 但是,这只是返回一个基本集合(根据文档,它是一个java.io.File的集合)。 有没有办法做到这一点,返回一个types安全的generics集合?

hadoop No FileSystem for scheme:file

我试图运行一个简单的NaiveBayesClassifer使用hadoop,得到这个错误 Exception in thread "main" java.io.IOException: No FileSystem for scheme: file at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:1375) at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:66) at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:1390) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:196) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:95) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:180) at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175) at org.apache.mahout.classifier.naivebayes.NaiveBayesModel.materialize(NaiveBayesModel.java:100) 代码: Configuration configuration = new Configuration(); NaiveBayesModel model = NaiveBayesModel.materialize(new Path(modelPath), configuration);// error in this line.. modelPath指向NaiveBayes.bin文件,configuration对象正在打印 – Configuration: core-default.xml, core-site.xml 我认为它是因为jar子,有什么想法?

在Java中将文件读入byte 数组的优雅方式

可能重复: 文件到Java中的byte [] 我想从文件中读取数据并将其解组到Parcel。 在文档中并不清楚,FileInputStream有读取其所有内容的方法。 为了实现这一点,我做了如下: FileInputStream filein = context.openFileInput(FILENAME); int read = 0; int offset = 0; int chunk_size = 1024; int total_size = 0; ArrayList<byte[]> chunks = new ArrayList<byte[]>(); chunks.add(new byte[chunk_size]); //first I read data from file chunk by chunk while ( (read = filein.read(chunks.get(chunks.size()-1), offset, buffer_size)) != -1) { total_size+=read; if (read […]

Haskell“什么都不做”IO,或者如果没有别的

我想在Haskell中做一些如下所示的事情: main1 = do s <- getLine if s == "foo" then putStr "You entered foo" 显然这是不合法的,因为没有else 。 我想到的一个select: nop :: IO () nop = sequence_ [] main2 = do s <- getLine if s == "foo" then putStr "You entered foo" else nop 这有点冗长,但如果有必要的话我会解决的。 但是,如果没有内置的nop版本,我会感到惊讶。 或者: doIf :: Bool -> IO () -> IO […]

读取完整的文件,而不使用java中的循环

可能重复: 如何从文件的内容创buildJavastring 将整个文本文件转换为Java中的string 我正在尝试使用FileReader读取文件的内容。 但我想阅读文件,而不是逐行阅读。 是否有可能读取整个文件没有循环。 我正在使用下面的代码 try { File ff=new File("abc.txt"); FileReader fr=new FileReader(ff); String s; while(br.read()!=-1) { s=br.readLine(); } } catch(Exception ex) { ex.printStackTrace(); }

Scala赋值给Unit的动机是什么,而不是赋值?

Scala赋值给Unit的动机是什么,而不是赋值? I / O编程的一个常见模式是做这样的事情: while ((bytesRead = in.read(buffer)) != -1) { … 但是在Scala中这是不可能的,因为… bytesRead = in.read(buffer) ..返回Unit,不是bytesRead的新值。 看起来像是一个有趣的事情,离开了function语言。 我想知道为什么这样做?