I can help with the file reading stuff,the mothod you are using to get the files only returns an array of file names. You need to use the Directory Info and File Info classes to get the data you require:
DirectoryInfo di =new DirectoryInfo("c:/inetpub/wwwroot/demos"); FileInfo[] rgFiles = di.GetFiles("*.aspx"); foreach(FileInfo fi in rgFiles) { Response.Write("<br><a href="+ fi.Name +">"+ fi.Name +"</a>"); }
The file info object also contains the create date and filesize etc. Google "list files in directory c#" for a bunch of more detailed tutorials.
For the user id, what sort of user do you mean? Are you referring to a back office user, or a front end member user?
Template getting the userid and how to get the file size?
Hey.
I have a template that read all documents in a specific folder and list it to the user.
Can i i my c# script getting the current userid to the script?
It is the saveDir I will have to go to media\fd\<userid> media\fd\1022 ect.
I try with saveDir = @"media\fd\"+@userid; and saveDir = @"media\fd\@userid"; but it dosen't work.
How can i read the file size and creation date?
My code is:
<%@ Master Language="C#" MasterPageFile="~/masterpages/Site.master" AutoEventWireup="true" %>
<script runat="server">
void Page_Load(object sender, EventArgs e) {
string saveDir = @"media\fd\";
string appPath = Request.PhysicalApplicationPath;
bool dokdirexists = System.IO.Directory.Exists(@appPath + saveDir);
bool Persdokdirexists = System.IO.Directory.Exists(@appPath + PerssaveDir);
if (!dokdirexists) {
System.IO.Directory.CreateDirectory(@appPath + saveDir);
}
string[] array1 = System.IO.Directory.GetFiles(@appPath + saveDir);
string FileInDir = null;
string TempFileName = null;
string TempFilePath = null;
string TempFileCreated = null;
string TempFileSize = null;
foreach (string name in array1) {
TempFileName = name.Replace(appPath+saveDir,"");
TempFilePath = name.Replace(appPath,"");
TempFileCreated = "2010-10-29";
TempFileSize = "200 kb";
FileInDir = FileInDir + "<div><label class='ll'>" +TempFileCreated + "</label><label class='lr'>" + TempFileSize + "</label><a href='" + TempFilePath + "'>" + TempFileName + "</a> " + "</div>";
}
UploadStatusLabel.Text = FileInDir;
}
</script>
<asp:content ContentPlaceHolderId="Content" runat="server">
<h2>Fælles dokumenter</h2>
<div class='filedirtop'><label class='ll'>Oprettet</label><label class='lr'>Størrelse</label>Filnavn</div>
<asp:Label id="UploadStatusLabel" runat="server"></asp:Label>
<h2>Personlige dokumenter</h2>
<div class='filedirtop'><label class='ll'>Oprettet</label><label class='lr'>Størrelse</label>Filnavn</div>
</asp:content>
I can help with the file reading stuff,the mothod you are using to get the files only returns an array of file names. You need to use the Directory Info and File Info classes to get the data you require:
DirectoryInfo di = new DirectoryInfo("c:/inetpub/wwwroot/demos");
FileInfo[] rgFiles = di.GetFiles("*.aspx");
foreach(FileInfo fi in rgFiles)
{
Response.Write("<br><a href=" + fi.Name + ">" + fi.Name + "</a>");
}
The file info object also contains the create date and filesize etc. Google "list files in directory c#" for a bunch of more detailed tutorials.
For the user id, what sort of user do you mean? Are you referring to a back office user, or a front end member user?
Cheers,
Tim.
I refer to the front end members...
I sovled the problem with personal folders this way...
var member = System.Web.Security.Membership.GetUser();
string PerssaveDir = @"media\fd\"+member+"\\";
I reach the problem is that i was using this line:
string PerssaveDir = @"media\fd\"+member+"\";
The last "\" should be "\\".
I look at your anser tomorrow.
Best Regards
Christian
is working on a reply...