Tag: 文件

MongoDB Java拉

我尝试删除嵌入式文档而没有成功。 我正在寻找以下指令的java方式: db.games.update({‘_id’: 73}, {$pull: {‘goals’: {‘goal’: 4}}})

使用流式传输的Android文件到Base64有时会错过2个字节

我正在写信要求解决以下困难的正确解决方案: 我需要以Base64格式对文件进行编码,并且我无法使文件变小,因此,我肯定会遇到OutOfMemory Exception,这就是为什么我使用Streaming方法来解决它。 文件编码后,我已经通过代码和在线工具立即对其进行了解码。 发现解码后的内容有时会在文件末尾丢失2个字节,但并非总是如此。 它确实影响了对文件的进一步处理。 希望有人可以提供帮助,可能是由于一个白痴的错误造成的。 还是谢谢。 这是代码: FileOutputStream fout = new FileOutputStream(path + “.txt”); //this is for printing out the base64 content FileInputStream fin = new FileInputStream(path); System.out.println(“File Size:” + path.getTotalSpace()); ByteArrayOutputStream os = new ByteArrayOutputStream(); Base64OutputStream base64out = new Base64OutputStream(os,Base64.NO_WRAP); byte[] buffer = new byte[3 * 512]; int len = 0; while […]

为什么Java会自动解码URI编码文件名中的%2F?

我有一个servlet,需要写出具有用户可配置名称的文件。 我正在尝试使用URI编码来正确转义特殊字符,但JRE似乎会自动将编码的正斜杠%2F转换为路径分隔符。 例: File dir = new File(“C:\Documents and Setting\username\temp”); String fn = “Top 1/2.pdf”; URI uri = new URI( dir.toURI().toASCIIString() + URLEncoder.encoder( fn, “ASCII” ).toString() ); File out = new File( uri ); System.out.println( dir.toURI().toASCIIString() ); System.out.println( URLEncoder.encode( fn, “ASCII” ).toString() ); System.out.println( uri.toASCIIString() ); System.out.println( output.toURI().toASCIIString() ); 输出是: file:/C:/Documents%20and%20Settings/username/temp/ Top+1%2F2.pdf file:/C:/Documents%20and%20Settings/username/temp/Top+1%2F2.pdf file:/C:/Documents%20and%20Settings/username/temp/Top+1/2.pdf 在实例化新的File对象之后, […]

阅读zip文件中的zip文件

我有zip文件在zip文件中的文件夹内,请建议我如何使用zip输入流阅读它。 例如: abc.zip | documents/bcd.zip 如何在zip文件中读取zip文件?

在Java中锁定文件的存在

简短版本:为什么File.createNewFile()不能用于文件锁定? 或者更具体地说:如果用于锁定应用程序数据目录,是否会出现问题? 细节: 我想使用锁定文件保护我的应用程序数据目录:如果文件lock存在,则目录被锁定,应用程序退出并显示错误消息。 如果它不存在,将创建它并继续应用程序。 退出时,文件将被删除。 锁定将不会经常创建(即性能不是问题),并且在出现某些错误时手动删除锁定文件没有问题(即无法删除文件不成问题)。 代码看起来像这样: File lockFile = new File(“lock”); boolean lockCreated = lockFile.createNewFile(); if (lockCreated) { // do stuff lockFile.delete(); } else { System.err.println(“Lockfile exists => please retry later”); // alternative: Wait and retry eg 5 times } 现在我对createNewFile()的Javadoc有点困惑: 当且仅当具有此名称的文件尚不存在时,以primefaces方式创建由此抽象路径名命名的新空文件。 检查文件是否存在以及文件的创建(如果不存在)是针对可能影响文件的所有其他文件系统活动的primefaces操作 。 注意: 此方法不应用于文件锁定,因为无法使生成的协议可靠地工作。 应该使用FileLock工具。 考虑到存在检查和文件创建是primefaces的,注释中提到的潜在问题是什么? 2007年12月的这篇论坛post表明,根据File.delete()的Javadoc,存在“显着的平台差异”(尽管至少从Java SE 1.4.2开始我找不到这样的声明)。 但即使存在这样的差异:它们真的会导致锁定失败(即两个进程认为数据目录同时可用)吗? 注意:我不想要以下任何一项: […]

Java文件等于

我不知道你们,但至少我预计f1会在下面的代码中等于f2,但显然情况并非如此! 你对此有何看法? 看来我必须编写自己的equals方法来支持它,对吗? import java.io.*; public class FileEquals { public static void main(String[] args) { File f1 = new File(“./hello.txt”); File f2 = new File(“hello.txt”); System.out.println(“f1: ” + f1.getName()); System.out.println(“f2: ” + f2.getName()); System.out.println(“f1.equals(f2) returns ” + f1.equals(f2)); System.out.println(“f1.compareTo(f2) returns ” + f1.compareTo(f2)); } }

Java中的PrintWriter write()vs print()方法

Java中PrintWriter类中的write()和print()方法有什么区别?

如何在java中找到类文件的包

我正在编写一个与.class文件一起使用的java程序。 我希望能够读取文件系统上的.class文件(使用InputStream)并确定它所在的包。该.class文件可能不在一个很好的包目录结构中,它可能在一些随机的地方躺着。 我怎样才能做到这一点?

调用.next()方法时扫描程序NoSuchElementException

在Java中,我得到了这个例外: Exception in thread “main” java.util.NoSuchElementException at java.util.Scanner.throwFor(Unknown Source) at java.util.Scanner.next(Unknown Source) at com.reading.text.Activity3.readFile(Activity3.java:22) at com.reading.text.Activity3.main(Activity3.java:10) 从这个Java代码: public static void main(String args[]) { readFile(“C:/Users/forsakendoll/Desktop/boom.txt”); } public static void readFile(String path) { Scanner file = null; try { file = new Scanner(new File (path)); } catch (FileNotFoundException e) { e.printStackTrace(); } finally { while (file.hasNext()) { […]

Java:从.txt文件LINE BY LINE中读取字节

请查看以下代码 import java.io.*; import java.util.ArrayList; import java.util.List; public class FileCopy2 { public static void main(String[]args) { try { //First in here, we are trying to get the bytes from the file File file = new File(“D:/burn/preview.mp3”); //The File you need to get byte bufferFile[] = new byte[(int)file.length()]; //Creating a byte array, which has the exact […]