Java在指定目录中创建文件,为啥输出不是C:\JavaTemp.javatemp? 文件名后面的数字是啥意思?求指点。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java在指定目录中创建文件,为啥输出不是C:\JavaTemp.javatemp? 文件名后面的数字是啥意思?求指点。相关的知识,希望对你有一定的参考价值。
import java.io.File;
public class Main
public static void main(String[] args)
throws Exception
File file = null;
File dir = new File("d:/");
file = File.createTempFile
("JavaTemp", ".javatemp", dir);
System.out.println(file.getPath());
文件名后面的数字是什么意思?为什么会生成这样?
输出结果如下:
已解决。
public static File createTempFile(String prefix, String suffix,
File directory)
throws IOException
if (prefix == null) throw new NullPointerException();
if (prefix.length() < 3)
throw new IllegalArgumentException("Prefix string too short");
String s = (suffix == null) ? ".tmp" : suffix;
if (directory == null)
String tmpDir = LazyInitialization.temporaryDirectory();
directory = new File(tmpDir, fs.prefixLength(tmpDir));
SecurityManager sm = System.getSecurityManager();
File f;
do
f = generateFile(prefix, s, directory);
while (!checkAndCreate(f.getPath(), sm));
return f;
private static File generateFile(String prefix, String suffix, File dir)
throws IOException
long n = LazyInitialization.random.nextLong();
if (n == Long.MIN_VALUE)
n = 0; // corner case
else
n = Math.abs(n);
return new File(dir, prefix + Long.toString(n) + suffix);
然后那串数字生成的源头:
return ((long)(next(32)) << 32) + next(32);本回答被提问者和网友采纳
如何在指定路径中创建目录?
我想创建目录。这是代码:
from os import mkdir
mkdir(*name of new directory*)
从终端运行时,这将在包含此python脚本的文件夹中创建目录。如何指定我想要创建新目录但仍有可能命名的路径?
答案
mkdir(*absolute path of new directory*)
所以,例如:
mkdir("c:/users/me/desktop/new_dir") # for Windows
mkdir("/home/users/me/Desktop/new_dir") # for Linux
另一答案
import os
os.makedirs('/your/path/new_dir')
# Creating a new directory under current directory
path = os.getcwd()+'/new_dir'
os.makedirs(path)
以上是关于Java在指定目录中创建文件,为啥输出不是C:\JavaTemp.javatemp? 文件名后面的数字是啥意思?求指点。的主要内容,如果未能解决你的问题,请参考以下文章
为啥我在eclipse中创建的jsp项目,没有Java Resources这个文件夹
为啥要执行权限以及在 c(Linux) 中创建文件所需的写权限? [关闭]