什么是java中fopen_s()的等价物
What is equivalent of fopen_s() in java?
我想在java 中转换此代码
fopen_s(&stream, "path", "w+");
w+
打开具有读写功能的空文件。如果给定的文件存在,则其内容将被销毁。
有什么建议吗?
nio似乎需要1.7java,所以我的选择是
RandomAccessFile f = new RandomAccessFile(name, "rw");
f.setLength(0);
我不是Java程序员,但我在网上做了一次短暂的搜索,Java似乎有一个RandomAccessFile
,你可以用"rw"
模式打开它。
真正等效的方法是使用Files.newByteChannel
。
final SeekableByteChannel channel = Files.newByteChannel(Paths.get("path"),
StandardOpenOptions.READ, StandardOpenOptions.WRITE,
StandardOpenOptions.TRUNCATE_EXISTING);
READ
和WRITE
选项决定是否应打开文件进行读取和/或写入。
TRUNCATE_EXISTING
-如果存在此选项,则现有文件将被截断为0字节大小。当文件仅为读取而打开时,此选项将被忽略。
看起来您想要FileOutputStream或FileWriter,这取决于您想要写入的数据类型。它们中的任何一个都可以用文件名实例化。
FileOutputStream fis = new FileOutputStream("/path/to/file");
FileWriter fw = new FileWriter("/path/to/file2");
如果文件已经存在,那么两者都会破坏该文件。(尽管存在用于追加而非重写的构造函数)
实现您想要的快速方法:
import java.io.*;
// Create a new file output connected to "myfile.txt"
out = new FileOutputStream("myfile.txt");
// Create a new file input connected to "myfile.txt"
in = new FileInputStream("myfile.txt");
您可能想看看官方文档中的java.io包,尤其是RandomAccessFile类,以及本快速指南。
相关文章:
- 在C++STL中是否有Polyval(Matlab函数)等价物?
- 在java中解决这段代码时面临循环中的问题
- 尝试用java代码编译和运行c++代码
- python集合的C++等价物是什么.计数器
- 在这种情况下,java对象是否可以调用本机函数
- 在java中读取c++字节的位字段
- 为什么C++对链表中的下一个节点使用指针,而像 C# 或 Java 这样的语言只使用类 Node 的名称?
- 使用已使用 java 编码的 openssl 解码数据
- C++中是否存在 std::conditional 的懒惰等价物?
- SWIG Java 在使用 -DSWIGWORDSIZE64 时将int64_t转换为 jlong
- Android Java USB for native cpp
- 在由Sublime文本3编译后在cmd上显示Java程序输出
- C++ equivalent to Java Map getOrDefault?
- GLM中的Java Matrix4.transform等价物
- Java的EnumSet.allOf()C++等价物是什么?
- Java 的 split() 的 c++ 等价物是什么?
- 继承Java集合接口(Set、Map、List等)的C++等价物是什么?或者扩展AbstractCollection
- 什么是java中fopen_s()的等价物
- MOUSE_INPUT_DATA的Java等价物
- 什么是C++中Java注释的最佳等价物