标签: file-rename

File.renameTo()返回true,但文件尚未重命名

我正在尝试为我的录音机创建一个文件,但这个文件不断获得一个随机名称.因为这很难使用,所以我希望在使用更有意义的名称创建文件后重命名该文件.

但是,即使renameTo返回true,文件也未重命名.

我在这里做错了吗?

outfile = File.createTempFile(amount + "_alarmsave", ".3gp",
                    storageDir);

            System.out.println("Old file: "+outfile.getAbsolutePath());

            File newFile = new File(outfile.getParent(), "alarmsave_" + amount + ".3gp");

            System.out.println("new file: "+newFile.getAbsolutePath());

            if(outfile.renameTo(newFile)){
                System.out.println("Succes! Name changed to: " + outfile.getName());
            }else{
                System.out.println("failed");
            }
Run Code Online (Sandbox Code Playgroud)

LogCat输出:

01-13 18:27:40.264: I/System.out(22913): Old file: /mnt/sdcard/Personal Alarm/13_alarmsave1623959934.3gp
01-13 18:27:40.264: I/System.out(22913): new file: /mnt/sdcard/Personal Alarm/alarmsave_13.3gp
01-13 18:27:40.284: I/System.out(22913): Succes! Name changed to: 13_alarmsave1623959934.3gp
Run Code Online (Sandbox Code Playgroud)

android file file-rename

8
推荐指数
1
解决办法
5803
查看次数

使用Bash重命名文件,删除前缀和后缀

我想用bash重命名一堆文件,转换这个文件模式:

prefix - name - suffix.txt
Run Code Online (Sandbox Code Playgroud)

进入这一个:

name.txt
Run Code Online (Sandbox Code Playgroud)

为此我写了以下脚本:

find . -name "*.txt" | while read f
do
  mv "${f}" "${f/prefix - /}"
done

find . -name "*.txt" | while read f
do
  mv "${f}" "${f/ - suffix/}"
done
Run Code Online (Sandbox Code Playgroud)

它有效,但我想使用单个循环执行重命名.可能吗?

bash shell file-rename

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

重命名内部存储中的文件

在应用程序的内部存储中重命名文件的最佳/最简单方法是什么?我发现有一种Context.deleteFile()方法有点奇怪,但没有"移动"或"重命名"功能.我是否必须一直保存文件内容,删除文件,创建新内容然后将内容复制到文件中?或者有没有办法在现有文件上复制文件?

更新(2012年8月30日):

根据下面建议的解决方案,我无法开展工作:

  • 我有一个名为shoppinglists.csv的文件
  • 然后我创建一个名为shoppinglists.tmp的新文件,并将shoppinglists.csv中的内容和一些新条目复制到其中.shoppinglist.tmp文件是shoppinglists.csv文件的新版本
  • 然后我删除旧的shoppinglists.csv文件
  • 然后我需要将shoppinglists.tmp文件重命名为shoppinglists.csv

我试过这个:

ctx.deleteFile("shoppinglists.csv");           <--- delete the old file
File oldfile = new File("shoppinglists.tmp");
File newfile = new File("shoppinglists.csv");
oldfile.renameTo(newfile);
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.在deleteFile()之后,没有更多的事情发生了,我留下了新的shoppinglists.tmp文件.

我错过了什么?

注意:LogCat中没有错误或任何内容.

android file-rename android-context

8
推荐指数
2
解决办法
1万
查看次数

重命名900kb的pdf文件需要很长时间

我正在尝试rename()使用PHP的900 KiB PDF文件.由于某种原因,重命名它需要很长时间.我认为应该是即时的.

这是在CentOS服务器上.在重命名文件时,我可以获取属性,似乎rename()是复制并用新重命名的文件替换旧文件.

旧名称和新名称路径位于同一目录中.

以前有人偶然发现了这个问题吗?


码:

    //If exists change name and then return path
    $pieces = explode("@", $filename);
    $newName = $pieces[0].' '.$pieces[2];

    rename($uidPath.$filename, $uidPath.$newName);

    if (preg_match('/pdf/', $pieces[2]))
    {
        $result['status'] = '1';
        $result['path'] = 'path to file';
    } 
    else 
    {
        $result['status'] = '1';
        $result['path'] = 'path to file';
    }
Run Code Online (Sandbox Code Playgroud)

php performance file-rename

8
推荐指数
1
解决办法
870
查看次数

如何在Linux/Unix中将多个文件从一个扩展名重命名为另一个扩展名?

我有一些以'.1'结尾的文件,例如:

example.file.ex1.1
example.file.ex2.1
example.file.ex3.1
Run Code Online (Sandbox Code Playgroud)

有没有一种方法,我可以快速重命名他们都没有在结尾(例如example.file.ex1,example.file.ex2等)" 1.1' ?

谢谢!

unix linux file-rename

8
推荐指数
2
解决办法
9289
查看次数

用于在C中重命名文件的Win32 API

如果是源目录和目标目录,MoveFile实际上会将源文件的副本复制到目标文件中,这意味着我最终会看到两个文件.

这是重命名的最佳方式吗?

c winapi file-rename

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

文件重命名问题?

在c#中重命名文件:

File.Move(source,Destination);
            File.Delete(source);
Run Code Online (Sandbox Code Playgroud)

它成功执行,但是当我再次尝试重命名文件时,系统会给出以下异常: 进程无法访问该文件,因为它正由另一个进程使用. 我无法发现它在哪里使用?当我进一步调试错误时,它显示我的类名是在w3wp.exe的过程中,这是IIS.我接下来该怎么办?越来越

foreach (string folder in folder)
{ 
 FileSystemItem item = new FileSystemItem(); 
 DirectoryInfo di = new DirectoryInfo(folder); 
 item.Name = di.Name;
 item.FullName = di.FullName; 
 item.Path = path + "\\" + item.Name;
 item.CreatedDate = di.CreationTime; 
 item.IsFolder = true; 
 item.Extension = "folder";
 listFolder.Add(item);
}
docList = CreatXmllist(listFolder); 
return docList
Run Code Online (Sandbox Code Playgroud)

这是我如何获取文件夹列表,然后它返回到xml.然后在文件夹中我点击它时获取文件

现在来获取图像:这是代码

public xml (string path, List<l> one)
    {

        List<T> tt = new List<T>();
        List<T> SessionList = new List<T>();
        string[] files = Directory.GetFiles(HttpContext.Current.Request.PhysicalApplicationPath + path);

        foreach (string file in …
Run Code Online (Sandbox Code Playgroud)

c# file file-rename

7
推荐指数
1
解决办法
1281
查看次数

在bash中通过向文件名添加数字来重命名文件

我有很多这样的文件:

13831_1.jpg
13838_1.jpg
138035_1.jpg
138037_1.jpg
138039_1.jpg
Run Code Online (Sandbox Code Playgroud)

我需要为文件名的数量添加5000000的值.结果应如下:

5013831_1.jpg
5013838_1.jpg
5138035_1.jpg
5138037_1.jpg
5138039_1.jpg
Run Code Online (Sandbox Code Playgroud)

有没有办法用bash或perl做到这一点?

bash rename file-rename

7
推荐指数
2
解决办法
5307
查看次数

在php中为文件名生成随机字符串

如何创建随机文本字符串以用于文件名?

我正在上传照片并在完成后重命名.所有照片都将存储在一个目录中,因此它们的文件名必须是唯一的.

有这样做的标准方法吗?

有没有办法在尝试覆盖之前检查文件名是否已经存在?

这是为了一个单一的用户环境(我自己)在我的网站上显示我的个人照片,但我想自动化一点.我不需要担心两个用户同时尝试上传和生成相同的文件名,但我确实想检查它是否已经存在.

我知道如何上传文件,我知道如何生成随机字符串,但我想知道是否有一种标准的方法.

php random upload image file-rename

7
推荐指数
2
解决办法
4万
查看次数

上传多个文件并重命名 - PHP

我正在上传多个文件.主要功能工作正常,但我必须要改变上传文件的名字,如: name1.jpg,name2.jps,name3.jpg,...

$i = 1;
if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/name'.$i++.'.'.$extension)){
     echo '{"status":"success"}';
     exit;
}
Run Code Online (Sandbox Code Playgroud)

数字$i应随着上传文件的数量而增长.我希望它能正确解释.

php file-rename multiple-file-upload

7
推荐指数
1
解决办法
2608
查看次数