Reading file on the server..
I am reading a file from the database and I want to store it on the server side. I have created a directory "download". But how to pass the path of this folder to the outputstream. I am giving the path as "/rootfolder/downloads/somefile.txt" but i am getting an error..system cannot find the specified path..
fs=new FileOutputStream("/rootfolder/downloads/somefile.txt" );
This is not working..how to do this..
I don't know if you're still watching this thread, but here is some follow up on this:
As to when you need to use the virtual directory for
paths and when you need to use absolute paths and
getRealPath(), I'm not entirely sure. Maybe the rule
is: if you're dealing with servlets or jsp's, i.e.
things that get the request and response objects, you
use the virtual directory; and when you deal with
other files you use absolute paths?Methods that are servlet methods, i.e. methods that are part of the servlet API like getRequestDispatcher(), know about the "context root" of the application (=your application directory) and can resolve paths relative to the context root, which are paths that start with a "/". However, a regular java method like a FileOutputStream constructor in the following code:
s=new FileOutputStream("/rootfolder/downloads/somefile.txt" );has no idea what a context root is or what a servlet is. Rather, the constructor needs an absolute path to the location of the file. That's why your path that started with a "/" wouldn't work.
The "/"
isn't always required though, because sometimes you
can leave off the slash, and then the path will be
interpreted relative to the current directory in the
virtual directory structure.This part gets a little tricky, and the following has to do with the path used when you want to forward the request to another servlet using getRequestDispatcher().
a) If you use a ServletContext object to call getRequestDispatcher(path), then you must use a path that is relative to the context root and start's with a "/".
b) If you use the request object to call getRequestDispatcher(path), then you can use a path:
----1) relative to the context root that starts with a "/", or
----2) relative to the "current directory". The "current directory" is determined by the url in the request. To discover what url is in the request, you need to determine what url requested your servlet. You can do that by looking at the <servlet-mapping> in your web.xml file and the <url-pattern> therein. If the <url-pattern> is:
/library/myDir/somePage.xxx
then the request's current directory is "/library/myDir" and that directory will be added to the front of the path you specify. If the <url-pattern> is:
/somePage.xxx
then the current directory is "/", and a slash will be added to the front of the path you specify.
Similar Messages
-
How to read an xml file on the server?
Hi all,
we need to read an XML file which will be on the appplication server (visible using the transaction AL11).
We will use the transaction CG3Z in order to upload the file to the server.
When we try to open it using the instruction OPEN DATASET we have a dump. Which way must we use to open an xml file in this case?
Thanks for your help.
DavidHi
With open dataset you can open any file on the application server. So it should be working, but maybe you are looking for:
CALL TRANSFORMATION my_transformation
SOURCE XML xml_string
RESULT ROOT1 = field1
ROOT2 = field2.
Best regards,
Guido Koopmann -
Socket blocking on read operation while uploading zip file to the server
I am trying to upload a zip file to the server
Client thread creates the zip file ( of the modified files) and it even completes writing the data to the socket stream.
Now if the server thread tries to read the same data from the stream, it blocks on read operation.
While downloding the zip file from the server works fine.
Thanks in advanceYou can use the URL object to upload it as multipart/form-data.
http://forum.java.sun.com/thread.jspa?threadID=579720&messageID=3997264
Or check out some of the file uploaders out there.
http://www.google.nl/search?hl=nl&q=site%3Asun.com+upload+applet&btnG=Zoeken&meta= -
Reading a file on the server with a servlet
How do you read a file with a servlet that is located on the server?
I have tried several methods: here I have one of them:
begin code
String temp;
temp = this.getServletContext().getRealPath(temp);
in = new BufferedReader(new FileReader(temp));
while(in.ready())
bodytext=in.readLine();
end code
output: can't find file
while I am 100% certain that the file is present at the location given in the String temp.
Can someone help me please?I have to make a servlet that makes a menu structure. When I press a link, he asks my servlet to read a html file on the server. Then, he writes a submenu structure combined with the body part of the html code of the html file. For now, I have made it in JavaScript, but that doesn't work like I want it to. An example of what I mean, you can find at http://www.autismevlaanderen.be/vva
It's in a foreign language(Dutch), but it's the structure that matters. -
When I publish my site on one specific page where I've added {tag_pagecontent} I get the error:
'Some files on the server may be missing or incorrect. Clear browser cache and try again. If the problem persists please contact website author.'
I'm trying to get a blog module going, I've even deleted the html insert bog with the tag in and re-published which then I don't get the error but as a result no blog either. But then I add the tag in again and publish the error comes back. I've used the dev console and it says that my musicians sample.css is out of date but why is it only out of date when I add in html to my muse site?
HELP!!!! I've searched other threads and to no avail I'm publishing so no direct ftp going on. the only thing I changed in business catalyst was the module stylesheet in order to style the blog. I've tried uploading and replacing all files nothing seems to work. the site is here:
http://www.musicstudentsforhire.co.uk/musicians-samples.html
It's only this page as it has the blog on. Also I've noticed when I've re-published occasionally it will show the mobile version on my desktop and not the desktop version??? no idea why that's happening so I've had to turn that off. any explanation on why that is happening would also be much appreciated.I haven't received an answer as of yet, I'll post t on here when I do. I de-activated the mobile site because it's my clients site so he needs it to be operational during the day. I hope someone gives me an answer soon.
-
The dialog box open twice when open file from the server
I use the following code to download/open file from the server:
<%
String filename = "MengxianhuiDocTest.doc";
String filepath = "D:\\";
response.setContentType("APPLICATION/OCTET-STREAM");
response.setHeader("Content-Disposition",
??attachment; filename=\"" + filename + "\"");
java.io.FileInputStream fileInputStream =
new java.io.FileInputStream(filepath + filename);
int i;
while ((i=fileInputStream.read()) != -1) {
out.write(i);
fileInputStream.close();
out.close();
%>
If the application runs, the Open or Save dialog box display.When I select open the file,
the dialog box will display twice.
Pls help me.
Thanks.thx
but I tried it and it did't work.
The dialog box also display twice. -
Hi all,
I am developing an application. in this app i have to implement RMI.
My problem is this, How can a client open a files from the server.
all the html, pdf files are stored in the server's directory like C:\audit\filename.
There is a folder on the server's C directory which contains all the html , pdf files.
please tell me how can a client open a file from the server using RMI.
Please send me the solution as soon as possible.
Thanks & Regards
BhavishyaThat's doing it the hard way. Why not use HTTP or FTP?
-
How to upload a file to the server using ajax and struts
With the following code iam able to upload a file ato the server.
But my problem is It is working fine if iam doing in my system nd when iam trying to
access theis application from someother system in our office which are connected through lan
iam getting an error called 500 i,e internal server error.
Why it is so???????
Plz help me????????
It is required in my project.
I want the code to access from every system.
My exact requirement is i have to upload a file to the server and retrive its path and show it in the same page from which we
have uploaded a file.
Here the file has to be uploaded to the upload folder which is present in the server.Iam using Tomcat server.
Any help highly appreciated.
Thanks in Advance
This is my input jsp
filename.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript">
alertflag = true;
var xmlHttp;
function startRequest(file1)
if(alertflag)
alert("file1");
alert(file1);
xmlHttp=createXmlHttpRequest();
var video=document.getElementById("filepath").value;
xmlHttp.open("POST","FilePathAction.do",true);
xmlHttp.onreadystatechange=handleStateChange;
xmlHttp.setRequestHeader('Content-Type', application/x-www-form-urlencoded');
xmlHttp.send("filepath="+file1);
function createXmlHttpRequest()
//For IE
if(window.ActiveXObject)
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
//otherthan IE
else if(window.XMLHttpRequest)
xmlHttp=new XMLHttpRequest();
return xmlHttp;
//Next is the function that sets up the communication with the server.
//This function also registers the callback handler, which is handleStateChange. Next is the code for the handler.
function handleStateChange()
var message=" ";
if(xmlHttp.readyState==4)
if(alertflag)
alert(xmlHttp.status);
if(xmlHttp.status==200)
if(alertflag)
alert("here");
document.getElementById("div1").style.visibility = "visible";
var results=xmlHttp.responseText;
document.getElementById('div1').innerHTML = results;
else
alert("Error loading page"+xmlHttp.status+":"+xmlHttp.statusText);
</script></head><body><form >
<input type="file" name="filepath" id="filepath" onchange="startRequest(this.value);"/>
</form>
<div id="div1" style="visibility:hidden;">
</div></body></html>
The corresponding action class is FIlePathAction
package actions;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;
public class FilePathAction extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
String contextPath1 = "";
String uploadDirName="";
String filepath="";
System.out.println(contextPath1 );
String inputfile = request.getParameter("filepath");
uploadDirName = getServlet().getServletContext().getRealPath("/upload");
File f=new File(inputfile);
FileInputStream fis=null;
FileOutputStream fo=null;
File f1=new File(uploadDirName+"/"+f.getName());
fis=new FileInputStream(f);
fo=new FileOutputStream(f1);
try
byte buf[] = new byte[1024*8]; /* declare a 8kB buffer */
int len = -1;
while((len = fis.read(buf)) != -1)
fo.write(buf, 0, len);
catch(Exception e)
e.printStackTrace();
filepath=f1.getAbsolutePath();
request.setAttribute("filepath", filepath);
return mapping.findForward("filepath");
Action-mappings in struts-config.xml
<action path="/FilePathAction"
type="actions.FilePathAction">
<forward name="filepath" path="/dummy.jsp"></forward>
</action>
and the dummy.jsp code is
<%=request.getAttribute("filepath")%>MESSAGE FROM THE FORUMS ADMINISTRATORS and COMMUNITY
This thread will be deleted within 24 business hours. You have posted an off-topic question in an area clearly designated for discussions
about Distributed Real-time Java. Community members looking to help you with your question won't be able to find it in this category.
Please use the "Search Forums" element on the left panel to locate a forum based on your topic. A more appropriate forum for this post
could be one of:
Enterprise Technologies http://forums.sun.com/category.jspa?categoryID=19
David Holmes -
How to download a pdf file from the server from an strut application?
Hi,
I wan to download a pdf file from the server side to local system. Please help me how i use the down load option.Read up on the Struts download action [1].
And next time, please post in the relevant forum, one of the web-tier ones [2].
[1] http://wiki.apache.org/struts/StrutsFileDownload
[2] http://forum.java.sun.com/category.jspa?categoryID=20
People on the forum help others voluntarily, it's not their job.
Help them help you.
Learn how to ask questions first: http://faq.javaranch.com/java/HowToAskQuestionsOnJavaRanch
---------------------------------------------------------------- -
How to download a text file from the server
hi everyone,
can anyone tell me how to download and read a text file from the server and saved in into resource folder.
with regards
pallaviits really easy
To read from server, use something like:
HttpConnection connector = null;
InputStream inp_stream = null;
OutputStream out_stream = null;
void CloseConnection()
if(inp_stream!=null)inp_stream.close();
inp_stream=null;
if(out_stream!=null)out_stream.close();
out_stream=null;
connector.close();
connector = null;
public void getResponse(String URL,String params)
try
if(connector==null)connector = (HttpConnection)Connector.open(URL);//URL of your text file / php script
connector.setRequestMethod(HttpConnection.POST);
connector.setRequestProperty("User-Agent","Profile/MIDP-2.0 Configuration/CLDC-1.1");
connector.setRequestProperty("content-type", "application/x-www-form-urlencoded");
//connector.setRequestProperty("charset","windows-1251");
//*** If you need to send ("arg1=value&arg2=value") arguments to script use this:
out_stream = connector.openOutputStream();
byte postmsg[] = params.getBytes();
out_stream.write(postmsg);
int rc = connector.getResponseCode();//in any case here connection will be opened & closed
if (rc != HttpConnection.HTTP_OK)
CloseConnection();
throw new IOException("HTTP response code: " + rc);
inp_stream = connector.openInputStream();
int pack_len = inp_stream.available();
byte answ[]=new byte[pack_len];
inp_stream.read(answ);
CloseConnection();
ProcAnswer(answ);//process received data
catch(Exception ex)
System.err.println("ERROR IN getResponse(): "+ex);
} And you can read from resource file like
public void loadFile(String filename)
DataInputStream dis = new DataInputStream(getClass().getResourceAsStream("/"+filename));
String str="";
try
while (true)
ch = dis.read();//read character
if(ch=='\r')continue;//if file made in windows
if(ch=='\n' || ch==-1)//end of line or end of file
if(str.length()==0)continue;//if empty line
//do some thing with "str"
if(ch==-1)break;//it was last line
str="";//next line
continue;
str+=(char)ch;
dis.close();
catch (Exception e)
System.err.println("ERROR in loadFile() " + e);
}Welcome! =)
Edited by: MorskoyZmey on Aug 14, 2008 3:40 AM -
How do I delete my iCloud email without deleting the files from the server?
I want to delete my iCloud email from a laptop I don't use much anymore. I am afraid if I do all the files will delete from the server as well. Is this true? If not, what are the best ways to go about deleting the account without harming the files on the server (in turn deleting all my email from synced iCloud devices)?
In Mail, delete the account, the server side will not be changed.
-
How can I save a file in the server?
Hello,
I am writing a Java Web Start program that it will generate a html file, how can I save the generated file in the server, fro example, the directory where I stored my JAR files. Because right now, it will create the html file in the local client mahcine instead of the server. Can anyone tell me how can I do this? Thanks you.Yeah, thanks but that's not what I was trying to ask.
I know that you can save and open a document by performing these three steps:
1. Confirming to save a file to the Downloads folder
2. Open the download manager by clicking the temporarily green arrow
3. Clicking on the downloaded file
What I would like to know is whether or not it is possible to have Firefox open a saved file ''automatically''. At the moment, if I choose to open it automatically, it is only saved to my temp folder.
It would be great though if it was saved to my Downloads folder ''and'' opened with the respective program on my pc. Is there a way to do this? -
I can successfully view and control a VI remotly. However, the remote VI dinamically loads another VI, this VI loaded dinamically is a VI that allows open others VIs, I want to see the files that contains the server machine, in the client machine, but the front panel of the dinamic VI appears only on the server and not on the client, How can I display the fron panel with the files of the server machine of the dinamically loaded VI on the client computer?
Attachments:
micliente.llb 183 KB
miservidor.llb 186 KB
rdsubvis.llb 214 KBI down loaded your files but could use some instructions on what needs run.
It seems that you are so close yet so far. You need to get the data on the server machine over to the client. I generally do this by doing a call by reference (on the client machine) of a VI that is served by the server. THe VI that executes on the server should pass the data you want to diplay via one of its output terminals. You can simply wire from this terminal (back on the client again) to an indicator of your choosing.
Now theorectically, I do not think that there is anything that prevents use from getting the control refnum of the actual indicator (on the server) of the indicator that has the data, and read its "Value" using a property node. I have never tried this idea but it seems t
hat all of the parts are there. You will need to know the name of the VI that holds the data as well as the indicator's name. You will also have to serve all VI's. This is not a good idea.
Ben
Ben Rayner
I am currently active on.. MainStream Preppers
Rayner's Ridge is under construction -
How to create a file in the server?
Hi,
I'm making a webservice that has to generate a XML file, sign it using another webservice and return this XML. The problem is that i don't know how to create the file in the server throught webservice.
I use this code in the webservice to generate the XML and after I return the XML to client in a byte[]
static void outputDocumentToFile(Document myDocument, String path) {
//setup this like outputDocument
try {
// XMLOutputter outputter = new XMLOutputter(" ", true);
XMLOutputter outputter = new XMLOutputter();
//output to a file
FileWriter writer = new FileWriter(path);
outputter.output(myDocument, writer);
writer.close();
} catch(java.io.IOException e) {
e.printStackTrace();
}But the file is generated in the client-side, how can I generate the file in the server-side?
Thanks very much.Well the File object doesn't create a file it's simply an abstract representation of file and directory pathnames.
You can try something like this:
<%
try
// get the path to the web server root
// I read somewhere not to use 'getRealPath' for some reason which I
// can't seem to remember :S Hopefull someone can enlighten us :)
String path = application.getRealPath("/project/jsp/demo.txt");
File file = new File(path);
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(file)));
writer.println("Hello World!");
writer.close();
catch (Exception e)
System.err.println(e.getMessage());
%>
Hope this helps :) -
Dynamically Reading Files From Application Server
Hi Experts,
Presently I have to write a program which reads files from the application server dynamically. This program will be scheduled in the background with the frequency of half an hour.
I am Using the function module
CALL FUNCTION 'SUBST_GET_FILE_LIST'
EXPORTING
DIRNAME = '/usr/sap/xxx/xxx/'
FILENM = 'DATASET'
PATTERN = '.txt'
TABLES
FILE_LIST = IT_FILELIST
I am facing problem in specifying the parameter FILENM in the function module,
As I have to read many files from the apps server. How to assign the parameter of function module so it can take the many files generated in the apps server.
Thanks in Advance,
Regards,
Irfan HussainHi,
Instead of the above FM, you can use the following code :
AT SELECTION-SCREEN ON VALUE-REQUEST FOR po_ifile.
PERFORM get_current_directory USING 'PO_IFILE' po_ifile
rov-home_dir rov-curr_dir.
PERFORM get_filename-of-server TABLES itab_filename
USING rov-curr_dir rov-gen_name.
PERFORM help_values_get_with_table_ext TABLES itab_filename
USING rov-curr_dir
po_ifile.
*& Form get_current_directory
text
-->P_0023 text
-->P_PO_IFILE text
-->P_ROV_HOME_DIR text
-->P_ROV_CURR_DI text
-->P_CALL text
-->P_FUNCTION text
-->P_0029 text
-->P_IMPORTING text
-->P_FILE_NAME text
-->P_= text
-->P_PO_IFILE text
FORM get_current_directory USING _fieldname
_filename
homedir
currdir.
IF _fieldname <> space.
PERFORM dunp_value_read USING _fieldname _filename.
ENDIF.
IF _filename = space.
currdir = homedir.
ELSE.
rov-work_dir = _filename.
rov-fdpos = STRLEN( rov-work_dir ).
DO.
IF rov-fdpos = 0.
EXIT.
ENDIF.
rov-fdpos = rov-fdpos - 1.
ASSIGN rov-work_dir+rov-fdpos(1) TO <rov_p>.
IF <rov_p> = rov-delchar.
<rov_p> = space.
EXIT.
ELSE.
<rov_p> = space.
ENDIF.
ENDDO.
currdir = rov-work_dir.
ENDIF.
ENDFORM. " get_current_directory
*& Form get_filename-of-server
text
-->P_ITAB_FILENAME text
-->P_ROV_CURR_DIR text
-->P_ROV_GEN_NAME text
FORM get_filename-of-server TABLES nametab STRUCTURE itabfilename
USING _dirname _genname.
CALL 'C_DIR_READ_FINISH' " just to be sure
ID 'ERRNO' FIELD rov-errno
ID 'ERRMSG' FIELD rov-errmsg.
CALL 'C_DIR_READ_START' ID 'DIR' FIELD _dirname
ID 'FILE' FIELD _genname
ID 'ERRNO' FIELD rov-errno
ID 'ERRMSG' FIELD rov-errmsg.
IF sy-subrc <> 0.
EXIT.
ENDIF.
REFRESH _nametab.
DO.
CLEAR _nametab.
CALL 'C_DIR_READ_NEXT' ID 'TYPE' FIELD _nametab-type
ID 'NAME' FIELD _nametab-name
ID 'LEN' FIELD _nametab-len
ID 'OWNER' FIELD _nametab-owner
ID 'MTIME' FIELD _nametab-mtime
ID 'MODE' FIELD _nametab-mode
ID 'ERRNO' FIELD _nametab-errno
ID 'ERRMSG' FIELD _nametab-errmsg.
_nametab-dirname = _dirname.
MOVE sy-subrc TO _nametab-subrc.
CASE sy-subrc.
WHEN 0.
IF _nametab-name+0(1) = '.'.
ELSE.
APPEND _nametab.
ENDIF.
WHEN 1.
EXIT.
WHEN OTHERS. " SY-SUBRC >= 2
EXIT.
ENDCASE.
ENDDO.
CALL 'C_DIR_READ_FINISH' " just to be sure
ID 'ERRNO' FIELD rov-errno
ID 'ERRMSG' FIELD rov-errmsg.
ENDFORM. " get_filename-of-server
*& Form help_values_get_with_table_ext
text
-->P_ITAB_FILENAME text
-->P_ROV_CURR_DIR text
-->P_PO_IFILE text
FORM help_values_get_with_table_ext TABLES _filename
STRUCTURE itab_filename
USING _currdir
_selfile.
TYPES: BEGIN OF f4typ_head_struc,
tabname LIKE help_info-tabname,
fieldname LIKE help_info-fieldname,
head_text LIKE shstruc-keyword,
END OF f4typ_head_struc.
DATA itab_fields LIKE TABLE OF help_value WITH HEADER LINE.
DATA itab_selvals LIKE TABLE OF help_vtab WITH HEADER LINE.
DATA itab_values LIKE TABLE OF rlgrap-filename WITH HEADER LINE.
DATA itab_header TYPE TABLE OF f4typ_head_struc WITH HEADER LINE.
REFRESH itab_fields.
REFRESH itab_selvals.
REFRESH itab_values.
REFRESH itab_header.
itab_fields-tabname = 'PS0192'.
itab_fields-fieldname = 'BAA01'.
itab_fields-selectflag = ' '.
APPEND itab_fields.
itab_fields-tabname = 'RLGRAP'.
itab_fields-fieldname = 'FILENAME'.
itab_fields-selectflag = 'X'.
APPEND itab_fields.
LOOP AT _filename.
itab_values = itab_filename-type.
APPEND itab_values.
itab_values = itab_filename-name.
APPEND itab_values.
ENDLOOP.
CALL FUNCTION 'HELP_VALUES_GET_WITH_TABLE_EXT'
EXPORTING
CUCOL = 0
CUROW = 0
DISPLAY = ' '
FIELDNAME = ' '
TABNAME = ' '
TITLE_IN_VALUES_LIST = ' '
SHOW_ALL_VALUES_AT_FIRST_TIME = ' '
USE_USER_SHRINKING = ' '
titel = _currdir
NO_SCROLL = ' '
NO_CONVERSION = ' '
NO_MARKING_OF_CHECKVALUE = ' '
IMPORTING
index = rov-index
select_value = rov-selvalue
TABLES
fields = itab_fields
select_values = itab_selvals
valuetab = itab_values
HEADING_TABLE =
EXCEPTIONS
field_not_in_ddic = 1
more_then_one_selectfield = 2
no_selectfield = 3
OTHERS = 4.
IF sy-subrc = 0.
CLEAR itab_filename.
READ TABLE itab_filename INDEX rov-index.
IF itab_filename-type+0(3) = 'dir'.
CONCATENATE _currdir rov-delchar rov-selvalue rov-delchar
INTO _selfile.
ELSE.
CONCATENATE _currdir rov-delchar rov-selvalue INTO _selfile.
ENDIF.
ENDIF.
ENDFORM. " help_values_get_with_table_ext
Best regards,
Prashant
Maybe you are looking for
-
Where is Search File Names option in Mavericks finder?
Prior versions of the finder had an option to allow searching of file names only. This seems to be gone in Mavericks. Is there any way to get it back?
-
my droid wont play any videos from youtube or any other website plus I downloaded songs and videos from itunes to the memory card and it says" the player does not support this file" and when I try to play a video it says " error video cannot be displ
-
How do I get my phone numbers from my IPhone 4 to IPhone 4S
how do I get my phone numbers from my IPhone 4 to my new IPhone 4S?
-
Data access in Teststand/LabVIEW through OPC connection
We are using TestStand 2.0 and LabVIEW6.2 and following problem occurs when accessing the datas from UUT through OPC. For the first UUT i get the measurement datas but starting the next UUT causes a system hang up. The corresponding LabVIEW VI stops
-
hi, i just got a video iPod (30GB) for my birthday and i want to know the best way to put video's on my iPod. i have many of my video's in a quicktime format on my external hard drive therefore i do not want them in iTunes, but i do what them on my i