我想创建一个目标,清除特定文件夹中7天以前的日志文件.当我尝试在文件集中放入"日期"元素时,我收到错误.我怎么能这样做?
<delete>
fileset basedir="${StageIISRoot}/MySite/App_Data/ErrorLog">
<date datetime="${datetime::now() - timespan::from-days(7)}" when="before"/>
<include name="*.xml" />
</fileset>
</delete>
Run Code Online (Sandbox Code Playgroud) 我正在使用UNLINK PHP和AJAX.我知道这种方式非常危险,因为每个人都可以删除任何文件.但我需要使用,AJAX因为我删除文件时无法重新加载页面.
那么我该如何才能允许仅为拥有它的用户删除该文件?
如果你认为我在这里做错了什么或其他什么你想到的东西,你也要告诉我其他的事情,你认为它会有用:)
我的PHP代码:
<?php
$photo_id = $_GET['photo_id'];
$thumbnail_id = $_GET['thumbnail_id'];
function deletePhotos($id){
return unlink($id);
}
if(isset($photo_id)){
deletePhotos($photo_id);
}
if(isset($thumbnail_id)){
deletePhotos($thumbnail_id);
}
?>
Run Code Online (Sandbox Code Playgroud)
我的AJAX代码:
function deletePhoto(photo, thumbnail){
var photos = encodeURIComponent(photo);
var thumbnails = encodeURIComponent(thumbnail);
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
} else {// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("media").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET", "http://192.168.2.104/images/users/delete_photo.php?photo_id="+photos+"&thumbnail_id="+thumbnails, true);
xmlhttp.send();
}
Run Code Online (Sandbox Code Playgroud) 我在删除除文件(index.dat)之外的目录中的所有内容时遇到问题我正在尝试清除cookies文件夹和文件的临时文件夹但是当我尝试删除index.dat时出现错误,因为它被另一个文件使用处理.有没有办法删除temp和cookies文件夹中除 index.dat文件以外的所有内容?这是我的代码:
string userProfile = Environment.GetEnvironmentVariable("USERPROFILE");
string strDirLocalq = Path.Combine(userProfile, "AppData");
string strDirLocalw = Path.Combine(strDirLocalq, "Roaming");
string strDirLocale = Path.Combine(strDirLocalw, "Microsoft");
string strDirLocalr = Path.Combine(strDirLocale, "Windows");
string strDirLocalt = Path.Combine(strDirLocalr, "Cookies");
string[] filePaths = Directory.GetFiles(strDirLocalt);
foreach (string filePath in filePaths)
File.Delete(filePath);
Run Code Online (Sandbox Code Playgroud) 在会话之后,我想清理我的临时文件夹,例如
d <- tempfile()
dir.create(d)
setwd(d)
# now work and sweave and latex etc
Run Code Online (Sandbox Code Playgroud)
我d该如何删除它的元素?file.remove失败.
我有一个基本的代码,我用它来删除给定目录中的文本文件:
For Each file As IO.FileInfo In New IO.DirectoryInfo(filePath).GetFiles("*.txt")
If (Now - file.CreationTime).Days > intdays Then file.Delete()
Next
Run Code Online (Sandbox Code Playgroud)
filePath 是文件所在的目录.
intdays 是一个变量,用于确定应保留文件的天数.
为了测试代码我将intdays设置为0,假设它将删除directoy中的任何文件.但它不会,但不会产生任何错误.
时间"现在"是#2/8/2012 13:59:00 PM#大于0.但我很困惑,为什么它不删除文件?
我遇到了一个奇怪的问题(这可能是我缺乏知识),我提出了令人讨厌的代码:
try
{
f.Delete();
fTemp.MoveTo(f.FullName);
Console.WriteLine("INFO: Old file deleted new file moved in > {0}", f.FullName);
}
catch (IOException ex)
{
Console.WriteLine("ERROR: Output file has IO exception > {0}", f.FullName);
Environment.ExitCode = 1;
}
Run Code Online (Sandbox Code Playgroud)
f和fTemp是FileInfo对象.因此,如果我使用代码执行此操作,其中f是在媒体播放器中播放的视频文件,则会抛出异常.这工作正常,如预期的那样.现在,当我关闭媒体播放器时,它会删除文件!?即使我的申请被长期关闭.即使我关闭Visual Studio,当我关闭媒体播放器时,它仍会删除该文件.好像某个回调正在某处设置,以确保文件在某个时刻被删除.这种不受欢迎的行为.但我无法弄清楚究竟出了什么问题......
结果现在:
if (!IsFileLocked(f))
{
try
{
f.Delete();
fTemp.MoveTo(f.FullName);
Console.WriteLine("INFO: Old file deleted new file moved in > {0}", f.FullName);
}
catch (IOException ex)
{
Console.WriteLine("ERROR: Output file has IO exception > {0}", f.FullName);
Environment.ExitCode = 1;
}
catch (UnauthorizedAccessException ex)
{
Environment.ExitCode = 2; …Run Code Online (Sandbox Code Playgroud) 我有以下代码删除文件:
from django.db import models
from django import forms
import os
class Document(models.Model):
docfile = models.FileField(upload_to='documents/%Y/%m/%d')
def __unicode__(self):
return '%s' % (self.docfile.name)
def delete(self, *args, **kwargs):
os.rmdir(os.path.join(settings.MEDIA_ROOT, self.docfile.name))
super(Document,self).delete(*args,**kwargs)
Run Code Online (Sandbox Code Playgroud)
它设法在我的views.py中删除我要求它的对象但是当我重新上载一个同名文件时,似乎原始文件仍然存在,因为我将获得"output_1.txt"而不是"output.txt" ".
这是我用来删除的代码:
def delete_matrix():
documents = Document.objects.all()
documents.delete()
Run Code Online (Sandbox Code Playgroud)
我不是从数据库中删除文件的吗?任何帮助,将不胜感激.
我有一个非常简单的查询.我的桌面上有一个文件夹"x"(Windows 7),我想编写一个批处理程序来删除其中的所有文件.(所有扩展)这就是我提出的:
cd c:\users\admin\desktop\x\
del *.*
Run Code Online (Sandbox Code Playgroud)
但是,当我打开它时,控制台仍然要求人为输入(Y/N).我该怎么做才能绕过这个?
我有以下结构:
Dir 1
|___Dir 2
|___file 1
|___file 2...
Dir 3
|___Dir 4
|___file 3...
Run Code Online (Sandbox Code Playgroud)
我希望能够递归地找到每个文件,以我自己的方式处理文件,一旦完成,删除文件,移动到下一个.然后,如果目录是空的,那么删除它,继续向上,直到没有剩下.
只是不知道如何继续.
这就是我所拥有的:
for root, dirs, files in os.walk(dir):
path = root.split('/')
for file in files:
file = os.path.join(root, file)
process_file(file)
os.remove(file)
Run Code Online (Sandbox Code Playgroud)
这很好,但我想删除子目录,只有它们是空的.
关于文件删除,我的laravel 5 Web应用程序存在一个问题.
我想从我的表中删除一个带有相应图像文件的条目.这是我的表格结构.
Schema::create('master_brands',function($table){
$table->increments('pk_brand_id');
$table->string('brand_name');
$table->string('brand_logo');
$table->timestamps();
});
Run Code Online (Sandbox Code Playgroud)
我在db中添加了3个品牌,并在brand_logo字段中存储图像路径,如:(/ uploads/masters/logocatagory_Computers&IT.png).
从数据库中删除记录时我也想从uploads文件夹中删除图像文件.但是当我执行删除操作时,文件没有删除.这是我的删除控制器.
public function branddelete($id)
{
$filename = DB::table('master_brands')->where('pk_brand_id', $id)->get();
$filname = url()."/app".$filename[0]->brand_logo;
File::delete($filname); // http://localhost/genie-works/devojp/app//uploads/masters/logocatagory_Computers & IT.png
}
Run Code Online (Sandbox Code Playgroud)
该文件存在于我的目录中,并且该目录具有777权限.!
我也试过Storage类来删除文件.但是没有办法!!! ..
我该如何解决这个问题?有任何想法吗... :(