Using JDBC to access text file
I gotta admit I didn't research it much. this is not like 'Help!!! Urgent!!!' question. I'm just curious. how do you work with tab-delimited files using JDBC? what driver do you need? same question goes for .csv files. I'm doing fine by just using file streams (no JDBC), splitting every line (split method of String class) and storing them in array. just curious. there are 10 shmukes for good answer, 5 for tab delimited and 5 for .csv (shmuke is my equivalent of dukes, they are almost as good (both are worthless)). I'll save dukes until I need some real answers.
Go over to the JDBC forum and do a search...I recently had a discussion of the particulars of this with thomas.kellerer.
Basically, you can use the Microsoft Text Driver if you're on a Windows platform. The Text driver gives you the option of defining your delimiter and headers for each file in a directory. The directory is considered the catalog (the database), and each file is considered a separate table. Works very well...I'm incorporating it into a project of mine.
Good luck!
Similar Messages
-
Using JNDI to access config file located outsite j2ee app
Hi I'm wanting to store a config file for my J2ee app, somewhere on a tomcat server possibly inside the
conf/ directory so that I can update this config file without having to redeploy the j2ee app every time a change is made.
I've been told I can use JNDI to access this file, but I can't seem to find any examples or documentation on how I can do this.
I'm new to JNDI and would appreciate any help, or suggestions.
Thanks,
Tim
EDIT:
So far I can access the file with this code:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.fscontext.RefFSContextFactory");
try {
Context ctx = new InitialContext(prop);
// look up context for name
//env.put(Context.PROVIDER_URL, "file:C:\\confluence\\confluence-2.5.1-std\\conf");
File f = (File)ctx.lookup("/confluence/confluence-2.5.1-std/conf/test.txt");My new problems are:
1. The commented line env.put(Context.PROVIDER_URL, "file:C:\\confluence\\confluence-2.5.1-std\\conf"); it says in examples that this should set the dir to look in to the conf dir but if i change the lookup value to just test.txt it cannot find it.
2. Can I somehow set the context to look into the conf directory of Tomcat without hard coding the path, as the path could change or be different on different machines??
Edited by: Timothyja on Jan 15, 2008 7:00 PMHi Kiran,
Looking at the code you sent and the error, it looks like you should be casting the ds object to a javax.sql.DataSource object not a weblogic.jdbc.common.internal.RmiDataSource object.
You may find some useful info at the following URL:
http://edocs.bea.com/wls/docs81/jdbc/rmidriver.html#1026007 -
Use JDBC to Access XML Documents in Oracle XML DB
Hi folks,
From the Oracle XML DB Developer's Guide 10g Release 1 (10.1) Chapter 12 Java API for XMLType, it show several examples for how java application use JDBC to access xml in XMLDB:
1. use getOPAQUE() on XMLTYPE table/column and then call XMLTYPE.createXML();
2. use getCLOBVal()/getStringVal()/getBLOBVal() in SQL statement;
3.use getObject on the result and cast directly to XMLType;
Among these 3 options, which is supposed to be the fastest way? Any difference between thin and oci?
I have run some tests about that and the result is the second option (with thin driver) is the fastest. It surprises me because I think oci should be faster than thin. Does the result make sense?
Thanks.Have you tried to trace your sessions to see how much work is happening? Traces should give you quantifiable information on exact times and access paths to the data.
Below is a link to an O'Reilly book excerpt on Java programming with JDBC. Slightly data, but may be of assistance.
http://www.onjava.com/lpt/a//onjava/excerpt/oraclejdbc_19/index.html -
Data Federator: Access Text file from secured Network Share or Sharepoint?
Hi,
I am using BusinessObjects Data Federator Designer XI 3.0 Service Pack 2 - 12.2.2.0 (Build 1002172322) and I'm new to DF.
I am trying to use the Text File Datasource type to connect to a file on a secured Network Share and from a Sharepoint 2010 document repository. Is this possible?
I am currently able to use the Text File datasource to read a file from a public network share (
share\public\folderpath\file) or on the local federator machine using the "Local File" connection but cannot put in a username/password for accessing a secure network share. Is there a built in DF username/password that should be granted access to the share?
Neiher the FTP File System or SMB Share seemed like it would work here either.
For the Sharepoint connection, I know that I can make a webservice on a list and connect DF to the webservice, but I want to just connect to the document repository. I was unable to get this to work even with Sharepoint repositories using WebDav since the Local File method did not accept the url string (http://mysite.<org>.com/personal/<user>/Shared Documents). Is there any way to do this without having to change the way the file is exposed on the Sharepoint side?
How is this normally handled? Put the files on a unsecured network share or on the DF server? Import the files into a DB and just use DB connections?
Finally, is there a way to import XLS/XLSX files in DF or only CSV files? I saw DI has an Excel Adaptor but didn't see anything for DF and when I tried it either could not retrieve the XML schema or reading the file's data failed.
Thanks alot for the help.
KerbyBump, any help here with Data Federator usage? Sharepoint, XLS files, or using secured network share?
-
Using getURL to access network files
I am working on an Intranet site and I need a button in Flash
to open a file that's on our network share. I know about the getURL
function and use it often to link to HTML files that are on the
same server as the web files, but I don't know how to use getURL to
open external files on the network:
example:
on (release) {
getURL("page1.html", "_blank");
page1.html is located on the webserver but contains a link to
\\server1\share1\document1.doc (server1 is a different server on
our network)
I want to eliminate the middle man and link directly to
document1.doc, but I don't know how to do that with getURL since
document1.doc is not on the webserver.
Thanks for any advice.I don't believe you can like directly to this file on your
network because of the security features built into flash which
will not allow network access such as this. -
Using importTextData to load text files
I have been having a real issue trying to load data from text files (tab delimited text file) into my form.
It works fine if I use importTextData() with no parameters and it prompts for the file name, then the row, but if I try and pass the path and row it comes back with a -2 result "User Cancelled Row Select".
My path is formatted as so: "/C/temp/importfile.txt"
It has to do with the path somehow... otherwise my file would not load properly when browsed.
And before people let me know I can import my information via an XML file, yes I know, but for this task, is not an option.
The end goal is to have a fixed drop-down on the form and depending on which item they select, Acrobat will load a text file into various controls.
I have attached my sample if someone wants to take a look.
Any help people can give is greatly appreciated.
PaulMy example was not very good. I replaced it with a new (see attached).
Previously I found my problem to be the header row in the text file was not formatted properly. ie. rather than have "task" as the column header it had to be frmProgressCard[0].frmTasks[0].tblTasks[0].rowTask[0].task[0]
That does not work any longer.
I save all the work in LiveCycle as Adobe Dynamic XML Form and then open it in Acrobat Pro to test, but still will not load my data. Returns with "invalid row" error.
So I think the problem is that first row that is suppose to link up with the text fields in the form, but I can't seem to find the proper format.
The help file only says to put in the field names, ie. "task", but that does not work.
Thanks
Paul -
Generating Postscript file using (psl132.prt) and Text file in one go
Actually my requirement is to have soft copy , postscript files in a single shot for character mode report because the report fetches data from the table then deletes the data.
- I am able to generate softcopy, and postscript files same using distribution file for Bitmap report as shown below :-
[RWRUN REPORT=C:\Report\R_TEST.RDF userid = test / test @ test DISTRIBUTE=YES DESTINATION=C:\Report\bRep.dst ERRFILE=C:\Report\Final\report.err
The brep.dst file for bitmap report is as follows:-
DEST1: DESNAME=C:\Report\tpdf.pdf DESTYPE=File DESFORMAT=PDF COPIES=1 LEVEL=Report
DEST2: DESNAME=C:\Report\test.prn DESTYPE=File DESFORMAT=BITMAP COPIES=1 LEVEL=Report
But in case of Char mode report i am able to generate text file but i am unable to generate postscript file for using printer definition file. The commands used are as follows :-
RWRUN REPORT=C:\Report\R_TEST.RDF userid = test / test @ test DISTRIBUTE=YES MODE=CHARACTER DESTINATION=C:\Reports\cRep.dst ERRFILE=C:\Report\Final\report.err
The crep.dst file for char report is as follows :-
DEST1: DESNAME=C:\Report\tpdf.text DESTYPE=File DESFORMAT=ASCII COPIES=1 LEVEL=Report
DEST2: DESNAME=C:\Report\test.prn DESTYPE=File DESFORMAT=prt132.prn COPIES=1 LEVEL=Report (This option does not work is there any work around to make it work) ]
I am getting an error. it there any work around for this or there is any other solution.
Is there any other way i convert my text file to postscript file or viceversa...thanksHi,
Peter Gjelstrup wrote:
Next thing is how to use it:
declare
k_file constant varchar2(30) := 'YourFile.xls'
begin
create_file(k_file);
-- Call other procedures
close_file;
end;
Don't forget: these procedures are all part of the gen_xl_xml package.
To call them from outside the package, you have to prefix each procedure name with the package name, like this:
declare
k_file constant varchar2(30) := 'YourFile.xls'
begin
gen_xl_xml.create_file(k_file);
-- Call other procedures
gen_xl_xml.close_file;
end; -
USING WEBUTIL TO READ TEXT FILE INTO TABLE HANGS AFTER CERTAIN NUMBER OF RE
Dear
when we use webutil to retrieve data from text file into database table
(using text_io) it hangs after certain number of records ( approx. 1300
records) while the total number of records to be inserted in the table exceeds
12000 records while it works properly on forms6i with the normal text_io any
help please...?
thanks and regardsWebUtil uploads the files as Binary - so yes you could have some issues if you have a Unix host - however, that would only mean that there is an extra character to trim off of the end of the line read by Text_io.
-
Using JAAS without config text files
Hi everybody,
I'm trying to develop an application using JAAS for authentication and authorization, but I don't want to depend on the text files for configuration.
This application is going to be distributed using Webstart, so I don't know which configuration the user will have.
Is there anyway to bypass these files?
Thanks a lot,
Luis JavierFor the LoginModule part, you could try to set your own Configuration object.
Ses javax.security.auth.login.Configuration.setConfiguration
You should be able to inherit from Configuration and provide your own method to
provide AppConfigEntries. -
ResizeImage using dimensions read from text file
XP Pro
CS
1GB Ram
Javascripting
Currently have the following code which works great.
if (largePrefsIsOpen) {
docRef.resizeImage(289,null);
I am encountering a problem with trying to put a variable in the dimension area (289,null)
I am reading a file that contains only the string "289,null" and want to read that into the resize paramaters as follows...
if (largePrefsIsOpen) {
docRef.resizeImage(largePrefsContents);
I can see the value of largePrefsContents is "289,null" minus the quotes but the image is resized to the following pixel dimensions 1 X 7.
The dimensions are read from a text file and put in the variable "largePrefsContents" but for some reason it is not resizing to that.
Any help would be greatly appreciated.
JeffThank you all very much.
Paul R's and try67's solution both work.
I can make this work but there still is an easier way for this - There has to be. :-)
I would still love to be able to parse as in the original string from the text file "289,null". The reason being is that sometimes the image may be resized based on the height and that would leave the width null (null,289).
That may not work in those cases because you won't know what is an integer and I have already thought through some lengthier code to make it work, but we all are trying to do the same thing - simpler and fewer lines of code are better.
I think I would like to parse the list as first suggested by Mark Walsh and then take the advice from Paul R and try67 and work towards a solution for the parsed portions of the text file.
I really do appreciate your time in looking this over.
Jeff -
Done ...
User DSN and System DSN Add. Select Microsoft Access Driver (*.mbd) and data source name is aa
in JSP ..
<%@ page import="com.thinweb.sql.*" %>
Class.forName ("sun.jdbc.odbc.JdbcOdbcDriver");
Connection c1 = DriverManager.getConnection("jdbc : odbc : aa","",""); [no spacing]
Error: 500
Location: /gone.jsp
Internal Servlet Error:
javax.servlet.ServletException: No suitable driver
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:459)
at _0002fLoginM_0002ejspLoginM_jsp_10._jspService(_0002fLoginM_0002ejspLoginM_jsp_10.java:181)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
at java.lang.Thread.run(Thread.java:484)
Root cause:
com.thinweb.sql.SQLException: No suitable driver
at com.thinweb.sql.DriverManager.getConnection(Unknown Source)
at com.thinweb.sql.DriverManager.getConnection(Unknown Source)
at _0002fLoginM_0002ejspLoginM_jsp_10._jspService(_0002fLoginM_0002ejspLoginM_jsp_10.java:123)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:177)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
at org.apache.tomcat.core.Handler.service(Handler.java:286)
at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
at org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:210)
at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
at java.lang.Thread.run(Thread.java:484)You must have the JdbcOdbcDriver.class in your classpath.
-
How to use JDBC to access "returning " clause
I think it is important to note here that you DO NOT have to use SQLJ for this. You can achieve the same result in plain JDBC. You must put the PL/SQL block in a CallableStatement object.
e.g.
CallableStatement cs = conn.prepareCall("declare myReturnValue table_name.field_name%type; begin insert into table_name (field1, field2, ... fieldn) values (?, ?, ... ?) returning fieldx into ?; end;");
To get hold of the "returning" parameter, register it as an OUT parameter (method 'registerOutParameter').
That should do it!! Email me if you need further explanation,
regards,
AlexI think it is important to note here that you DO NOT have to use SQLJ for this. You can achieve the same result in plain JDBC. You must put the PL/SQL block in a CallableStatement object.
e.g.
CallableStatement cs = conn.prepareCall("declare myReturnValue table_name.field_name%type; begin insert into table_name (field1, field2, ... fieldn) values (?, ?, ... ?) returning fieldx into ?; end;");
To get hold of the "returning" parameter, register it as an OUT parameter (method 'registerOutParameter').
That should do it!! Email me if you need further explanation,
regards,
Alex
null -
Free JDBC driver for text files?
Hi!
Is anyone aware of a free JDBC driver for working on flat files (CSV or such)?old, but has one,
http://s1.amazon.com/exec/varzea/ts/exchange-glance/Y04Y6991739Y3914154/qid=1029235607/sr=1-1/103-1147013-1707008 -
Using ArrayList to store Lines in a text File
Hey Guys,
I have the following program that I am using to read a text file and store each word in each line in an ArrayList. But I am getting the following error;
Exception in thread "main" java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(AbstractList.java:449)
at java.util.AbstractList$Itr.next(AbstractList.java:420)
at bus.OrderReader.parseLine(OrderReader.java:50)
at bus.OrderReader.main(OrderReader.java:32) The code is as follows;
package bus;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.Scanner;
import java.util.Collection;
import java.util.ArrayList;
import java.util.Iterator;
public class OrderReader {
static Collection bread = new ArrayList();
static Collection filling = new ArrayList();
static Iterator iter1 = filling.iterator();
static Iterator iter2 = bread.iterator();
private static int counter;
public static void main(String args[]){
Scanner s = null;
try {
s = new Scanner(new BufferedReader(new FileReader("/Users/admin/Documents/workspace2/OBS/WebContent/WriteMe.txt")));
s.useDelimiter("\r");
while(s.hasNext()) {
parseLine(s.next());
counter++;
s.close();
catch(FileNotFoundException e) {
System.out.println("cannot find the file");
//ignore for now
public static void parseLine(String line) {
Scanner lineScanner = new Scanner(line);
lineScanner.useDelimiter("#");
bread.add(lineScanner.next());
filling.add(lineScanner.next());
System.out.println(iter1.next());
System.out.println(iter2.next());
}I do not understand why this does not work. Can someone please point me in the right direction?
Thank You
JazInstead of doing this:
bread.add(lineScanner.next());
filling.add(lineScanner.next());
System.out.println(iter1.next());
System.out.println(iter2.next());where presumably you're just printing what you just
barely added, do this:
Object breadObject = lineScanner.next();
Object fillingObject = lineScanner.next();
bread.add(breadObject);
filling.add(fillingObject);
System.out.println(breadObject);
System.out.println(fillingObject);
And get rid of the now unused iterators.Im not sure I understand quiet what is happening here. Are you creating a primitive data type of type Object and then storing all the values in that variable?
why would I do this when this only allows me to view the very last element that was added to the list? I want to view the entire list.
Thanks
Jaz
Message was edited by:
DontKnowJack -
How to open saved files using 'read from text file' function
Hi everyone, I am having a hard time trying to solve the this particular problem ( probably because I am a newb to lanbview ). Anyway , I am able to save the acquired waveforms by using the 'Write to text file' icon. I did manually modify the block diagram of the 'Write to text file' icon and create the correct number of connector so as to make my program work. But now I have no idea on how to modify the block diagram of the 'Read from text file' block diagram to make my program 'open' my saved waveforms. Or i do not have to modify anything from the block diagram of the 'Read from text file'? Can anyone teach/help me connect up? Do i need the build array on the "open" page?
Here are some screenshots on part of my program
let me know if you guys would need more information / screenshots thank you!
Attachments:
ss_save.jpg 94 KB
ss_open.jpg 94 KB
modified_writetotextfile.jpg 99 KBOhmy, thanks altenbach. oh yeah i forgot about those sub VIs. will upload them now. Was rather demoralized after reading the comments and really struck me on how weak i'm at on labview really hope to get this done. But of course i have to study through and see how it works. Actually i am going to replace those 'signal generators sub vi' with ThoughtTechonology's sample code so i can obtain data waveforms real-time using Electrocardiography (ECG) ,Electromyography (EMG ) and Electroencephalography (EEG) hopefully i can find out how to connect the sample code.
( ps . cant connect it now unless my program is working otherwise labview will crash )
( p.s.s the encoder of my biofeedback trainer already acts as an DAQ so i wont need to place an DAQ assistant in my block diagram i suppose )
The sample code of ThoughtTechnology is named as attachment.ashx.vi. too bad i cant use it and present it as my project
Attachments:
frequency detactor.vi 53 KB
signal generator.vi 13 KB
attachment.ashx.vi 40 KB
Maybe you are looking for
-
Why doesn't my trigger window open whenever i double-click on one or create a new one?
Hello, Whenever i open a new trigger, or double-click on a trigger there should open a window to add code, but there isn't opening anything anymore. I don't remember whenever this happened, because i haven't been using Edge for some time now. It alre
-
Archived document Link to Service order
Hi, My requirement is to link the Archived document to the service order. The document is achieved by third party. I have created a content repository, Document type, created a link for the content repository. In this case can you please let me know
-
I have played with the YouTube feature and find it quite useful. One concern that I have is about the YouTube links going away. Is there any way to download a YouTube video and post it to a personal (or company) server to ensure the link never dies?
-
my mac is dim... i dont know how to make it brighter??
-
HT201269 Transferring information to new iPhone question
I have accidentally opted to set up my new iPhone "as new iPhone" instead of restoring it from iCloud backup. How can I rectify this?