How to read multiple objects stored in a file.
Hi,
there is a file on which multiple object have been written.
Now while reading it back, is it necessary to read the objects in the same sequence in which they were written or i can randomly read any object?
thanx
deepak saini
I suppose you could use random file access, but you would need to keep track of where you put the objects.
Similar Messages
-
How to multiple objects stored in a file.
Hi,
there is a file on which multiple object have been written.
Now while reading it back, is it necessary to read the objects in the same sequence in which they were written or i can randomly read any object?
thanx
deepak sainiIf that's really a concern, you could write the objects to separate files.
Alternatively, if you're really keen, look at RandomAccessFile. You'd have to build InputStream and OutputStream bridges to be able to use ObjectInputStream and ObjectOutputStream. You'd probably want to use BufferedInputStream and BufferedOutputStream in there too.
You'd start by writing a long of value zero the file. Then use a new ObjectOuptutStream for each object (rembering to close each one), retaining a List of offsets into the file where the objects start. Then you'd write the List itself using another ObjectOutputStream. Finally you position back to the beginning of the file, and write the offset of the List as a long, overwriting the long zero value.
The reading side is left for as exercise for the reader.
This would allow you to read directly any object given its index into the List.
This is only worthwhile if you're talking about lots of objects.
And, as I said, only if you're keen :)
Sylvia. -
How to read multiple lines from an external file to the Oracle data base
Hi Guys,
I have an external file which contains multiple lines and I want to read it to the data base .I have done it for the file if it contains one line.
Please guide me how to retrieve all the lines into the data base.And also tell me how Oracle will come to know the end of the line in the file
Thanks,
PrafullaHi,
try this
CREATE TABLE ab
a VARCHAR2(1 BYTE),
b VARCHAR2(2 BYTE),
c VARCHAR2(10 BYTE),
d VARCHAR2(11 BYTE)
ORGANIZATION EXTERNAL
( TYPE ORACLE_LOADER
DEFAULT DIRECTORY dir_name
ACCESS PARAMETERS
( records delimited by newline
fields (
a POSITION(*) CHAR(1),
b POSITION(*) CHAR(2 ),
c POSITION(*) CHAR(10 ),
d POSITION(*) CHAR(11 )
LOCATION (dir_name:'filename.txt')
REJECT LIMIT UNLIMITED
NOPARALLEL
NOMONITORING;
Regards,
Simma.... -
How to read appended objects from file with ObjectInputStream?
Hi to everyone. I'm new to Java so my question may look really stupid to most of you but I couldn't fined a solution by myself... I wanted to make an application, something like address book that is storing information about different people. So I decided to make a class that will hold the information for each person (for example: nickname, name, e-mail, web address and so on), then using the ObjectOutputStream the information will be save to a file. If I want to add a new record for a new person I'll simply append it to the already existing file. So far so good but soon I discovered that I can not read the appended objects using ObjectInputStream.
What I mean is that if I create new file and then in one session save several objects to it using ObjectOutputStream they all will be read with no problem by ObjectInputStream. But after that if in a new session I append new objects they won't be read. The ObjectInputStream will read the objects from the first session after that IOException will be generated and the reading will stop just before the appended objects from the second session.
The following is just a simple test it's not actual code from the program I was talking about. Instead of objects containing different kind of information I'm using only strings here. To use the program use as arguments in the console "w" to create new file followed by the file name and the strings you want save to the file (as objects). Example: "+w TestFile.obj Thats Just A Test+". Then to read it use "r" (for reading), followed by the file name. Example "+r TestFile.obj+". As a result you'll see that all the strings that are saved in the file can be successfully read back. Then do the same: "+w TestFile.obj Thats Second Test+" and then read again "+r TestFile.obj+". What will happen is that the strings only from the first sessions will be read and the ones from the second session will not.
I am sorry for making this that long but I couldn't explain it more simple. If someone can give me a solution I'll be happy to hear it! ^.^ I'll also be glad if someone propose different approach of the problem! Here is the code:
import java.io.*;
class Fio
public static void main(String[] args)
try
if (args[0].equals("w"))
FileOutputStream fos = new FileOutputStream(args[1], true);
ObjectOutputStream oos = new ObjectOutputStream(fos);
for (int i = 2; i < args.length ; i++)
oos.writeObject(args);
fos.close();
else if (args[0].equals("r"))
FileInputStream fis = new FileInputStream(args[1]);
ObjectInputStream ois = new ObjectInputStream(fis);
for (int i = 0; i < fis.available(); i++)
System.out.println((String)ois.readObject());
fis.close();
else
System.out.println("Wrong args!");
catch (IndexOutOfBoundsException exc)
System.out.println("You must use \"w\" or \"r\" followed by the file name as args!");
catch (IOException exc)
System.out.println("I/O exception appeard!");
catch (ClassNotFoundException exc)
System.out.println("Can not find the needed class");How to read appended objects from file with ObjectInputStream? The short answer is you can't.
The long answer is you can if you put some work into it. The general outline would be to create a file with a format that will allow the storage of multiple streams within it. If you use a RandomAccessFile, you can create a header containing the length. If you use streams, you'll have to use a block protocol. The reason for this is that I don't think ObjectInputStream is guaranteed to read the same number of bytes ObjectOutputStream writes to it (e.g., it could skip ending padding or such).
Next, you'll need to create an object that can return more InputStream objects, one per stream written to the file.
Not trivial, but that's how you'd do it. -
How to read multiple lines using 'REUSE_ALV_GRID_DISPLAY'
Hi,
In ALV report the FM 'REUSE_ALV_GRID_DISPLAY' used.
EXPORTING
I_CALLBACK_PROGRAM = W_REPID
I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
How to read multiple lines in the following dynamic subroutine ?
I am able to read single value through p_selfld.
Nut the requirement is to change the values in more than 1 row for a fld (edit mode)
FORM USER_COMMAND USING P_UCOMM TYPE SY-UCOMM
P_SELFLD TYPE SLIS_SELFIELD.
endform
Thanks in advanceYou can get the reference by a dirty assign, but this is not offcially supported...
But if you have some limitations.
FORM user_command USING fuw_ucomm LIKE sy-ucomm
fuw_selfield TYPE slis_selfield.
FIELD-SYMBOLS: <lfs_grid> type ref to cl_gui_alv_grid,
<lfs_row> type LVC_S_ROW.
data: li_rows type lvc_t_row.
assign ('(SAPLSLVC_FULLSCREEN)GT_GRID-GRID') to <lfs_grid>.
check sy-subrc is initial.
call method <lfs_grid>->get_selected_rows
IMPORTING
et_index_rows = li_rows.
endform. "user_command -
How to read PP01- Object type u0091Positionu0092- Description- Text
Hi All,
How to read PP01->Object type Position->Description->Text
I tried to use READ_TEXT but i am not able to figure out what combination
to be given in input fields of this BAPI.
Please Guide.
RegardsHi Amit,
Thanks for reply.
It is coming in HRT1002 table which is linked with HRP1002 with field TABNR.
But problem is that I have to capture this value in BADI-HRBAS00INFTY.
Before save. Because with BADI i need to update data in it.
any solution of it?
Regards -
How to read iCal events from SQLite Cache file?
I need to figure out how to read event entries in the Cache file stored in /Library/Calenders/ as my actual events have been corrupted due to a file system problem. The example below shows the information I have for each entry, where the event in the entry was Bon Jovi Concert, however I am confused how I can read the date and time of the event, information I believe is stored as 218215639,219613081,219524400,219540600. Any help is greatly appreciated.
INSERT INTO "ZCALENDARITEM" VALUES(0,NULL,0,NULL,0,5,NULL,6,4039,NULL,0,0,0,0,0,0,2,23,0,0,0,0,6,0,21821563 9,219613081,219524400,219540600,NULL,NULL,NULL,NULL,NULL,'local_AFB8D342-2DAE-4F A1-A9A6-3FA9B28B5C7C','Bon Jovi Concert',NULL,NULL,NULL,'Europe/London',NULL,'0E17BBB6-0E76-4024-8DD7-60E43D38D 35B');OK, here we go ... I hope. I have tried it on my iCal, with about 2000 entries, and it worked. I cannot guarantee that it will work for you.
Make a new text file from sql as before, but using this modified command to get additional data for each event:
sqlite3 Desktop/Hope 'select ZSTARTDATE, ZCALENDARITEM.ZTITLE, ZENDDATE, ZNODE.ZTITLE, ZISALLDAY, ZRECURRENCERULE, ZISDETACHED from ZCALENDARITEM inner join ZNODE on ZCALENDARITEM.ZCALENDAR = ZNODE.Z_PK where ZSTARTDATE not null' >hope.txt
I suggest you make a new user account, then copy the text file hope.txt and the script to the Public/Drop Box folder for that account. Log on to the new account and copy the two files from the drop box to the Desktop. Start iCal and make new calendars to match those in your ordinary account. Double click the script to open it in Script Editor and CHANGE THE DATE RANGE in the "set ThePeriod" line. Stand well back and click the run button. Every 50 records processed it will pop up a progress box, which will pop down again after a second. Go for lunch.
When it is finished see if things look OK in iCal. If they do export each of the calendars, copy them to the drop box of your normal account and return to your normal account to import them.
If there is an error make a note of the error message and line number, find that line in the text file, and post it here with a couple of lines either side.
Note that for recurring items iCal normally only makes a single event, the first occurrence, then uses a recurrence rule to calculate if the event should be displayed in the current window. If there are any recurring events in the period you have selected where the first occurrence is before the period they will not be recreated. Where however you have changed a single occurrence of a recurring event iCal makes a new, detached, event. Any of these in the period will be detected. If their original event was also in the period they will now appear in the iCal display as duplicates. For easy spotting of these, I have prefixed "XX-" to the title of any detached events.
AK
<pre style="font-family: 'Monaco', 'Courier New', Courier, monospace; overflow:auto; color: #222; background: #DDD; padding: 0.2em; font-size: 10px; width:400px">on run
set ThePeriod to {date ("jan 1 2008"), date ("dec 31 2008")} --CHANGE THIS BEFORE RUNNIN
set TheFile to open for access (path to desktop as text) & "temp.txt"
set TheContents to read TheFile --until return
close TheFile
set TheLines to paragraphs of TheContents
set OldDelim to AppleScript's text item delimiters
set AppleScript's text item delimiters to {"|"}
set LCount to 0
set ACount to 0
set RCount to 0
set DCount to 0
set SCount to 0
set HowMany to (count of TheLines)
try
repeat with ThisLine in TheLines
if (count of ThisLine) is 0 then exit repeat
-- Start Date, Title, End Date, Calendar, All Day, Recurs, Detached
set LCount to LCount + 1
set Details to text items of ThisLine
set MyStartDate to FixMyDate(item 1 of Details)
set MyTitle to item 2 of Details
set MyEndDate to FixMyDate(item 3 of Details)
set MyCalendar to item 4 of Details
set MyAllDay to item 5 of Details
set MyRecurs to item 6 of Details
set MyDetached to item 7 of Details
if MyAllDay is "1" then set ACount to ACount + 1
if (count of MyRecurs) > 0 then set RCount to RCount + 1
if MyDetached is "1" then set MyTitle to "XX-" & MyTitle
if MyDetached is "1" then set DCount to DCount + 1
if (MyCalendar is not "Birthdays") and (MyStartDate ≥ item 1 of ThePeriod) and (MyStartDate ≤ item 2 of ThePeriod) then
tell application "iCal"
tell calendar MyCalendar
set ThisItem to make new event at end of events with properties {summary:MyTitle, start date:MyStartDate}
end tell
tell ThisItem
if MyAllDay is "1" then set allday event to true
if (count of MyRecurs) > 0 then set recurrence to MyRecurs
set end date to MyEndDate
end tell
end tell
else
set SCount to SCount + 1
end if
if (LCount mod 50) = 0 then
set the_message to "Processed " & (LCount as string) & " of " & (HowMany as string)
display dialog the_message buttons {"Cancel"} giving up after 1
end if
end repeat
on error TheError
display dialog "Error: " & TheError & " about line " & LCount
end try
set AppleScript's text item delimiters to OldDelim
display dialog (LCount as string) & " lines processed" & return & "All Day: " & (ACount as string) & return & "Recurs: " & (RCount as string) & return & "Detach: " & (DCount as string) & return & "Skipped: " & (SCount as string)
end run
on FixMyDate(MyDate)
date (do shell script "date -r " & MyDate & " -v+31y +%e'/'%m'/'%y' '%T")
end FixMyDate
</pre> -
How to read the and Write the PDF file give me the solution
Hi all,
How to read the and Write the PDF file give me the solution
My coding is
import java.io.File;
import com.asprise.util.pdf.PDFImageWriter;
import com.asprise.util.pdf.PDFReader;
import java.io.*;
import java.io.FileOutputStream;
public class example {
// public example() {
public static void main(String a[])
try
PDFReader reader = new PDFReader(new File("C:\\AsprisePDF-DevGuide.pdf"));
reader.open(); // open the file.
int pages = reader.getNumberOfPages();
for(int i=0; i < pages; i++) {
String text = reader.extractTextFromPage(i);
System.out.println("Page " + i + ": " + text);
// perform other operations on pages.
PDFImageWriter writer = new PDFImageWriter(new FileOutputStream("c:\\new11.pdf"));
writer.open();
writer.addImage("C:\\sam.doc");
writer.close();
System.out.println("DONE.");
reader.close();
catch(Exception e){System.out.println("error:"+e);
e.printStackTrace();
I get the pdf content then it returns the string value but ther is no option to write the string to PDF, and we only add a image file to PDF,but i want to know how to wrote the string value to PDF file,
Please give response immtly
i am waiting for your reply.
thanks,
Suresh.GI have some question flow
How library to use this code.
I try runing but have not libary.
Please send me it'library
Thank you very much! -
How to read the content of a text file (by character)?
Guys,
Good day!
I'm back just need again your help. Is there anyone knows how to read the content of a text file not by line but by character.
Please help me. Thank you so much in advance.
Jojohttp://java.sun.com/javase/6/docs/api/index.html
package java.io
InputStream.read(): int
Reads the next byte of data from the input stream.
Implementation:
InputStreamReader
An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and decodes them into characters using a specified charset. The charset that it uses may be specified by name or may be given explicitly, or the platform's default charset may be accepted. -
Help on how to read the content of an XML file from the payload
I have a receiver channel / mail adapter, that sends e-mails with a XML attachment.
Im trying to write a Bean, that should make it possible to rename the attached XML file dynamically.
In the Bean I want to read the content of the attached XML file, it could be the order number.
The filename should then be Order number.XML.
<u><i>Can anyone help me with how to read the content of the XML file from the payload.</i></u>
<i><b>Frank</b></i>hi,
check this: http://jakarta.apache.org/poi/ -
How to read the content of ms-word file use pure java???
how to read the content of ms-word file use pure java???
hi,
check this: http://jakarta.apache.org/poi/ -
How can read/write FORMSWEB.CFG & DEFAULT.ENV file entries programatically?
Environment: Forms 9i (Web)
As : Oracle 9i As
How can read/write FORMSWEB.CFG & DEFAULT.ENV file entries programatically?I guess you cannot. There is an enhancement request to get the name of the config-section as a GET_APPLICATION_PROPERTY.
What you could do is add extra parameter(s) to your form and pass the necessary formsweb.cfg parameters in this form parameter. See Get formsweb.cfg section name in Forms for more info and an example. -
How to read contents of more than 2 files.
hi all
help me.
How to read contents of more than 2 files.
For reading a file contents we uses normally FileInputStream
For reading two file contents we uses normally SequenceInputStream
But which class we have to use for reading contents of more than 2 files at a time
thanks in advance.SequenceInputStream can be used for reading any number of input streams (not at once, but one after the other).
This involves making an Enumeration that returns the input streams you want to read. Depending on what you want to do, it might be just as easy to read them one after another.
Or consider making a Vector of your input streams and using its elements() method. Like this:(untested)Vector<InputStream> inVec = new Vector<InputStream>();
inVec.add(new FileInputStream("foo.dat"));
inVec.add(new FileInputStream("bar.dat"));
inVec.add(new FileInputStream("baz.dat"));
// later...
SequenceInputStream in = new SequenceInputStream(inVec.elements()); -
How to read SYstemstate level 266 dump trace file?
Hi I have simple question regarding documentation availability.
How to read SYstemstate level 266 dump trace file?
I tried googling it but didnt find any good article?Hi,
It is supposed to graph frequency content vs time, and the display I get comes all black. Look at the attachments for the load state, the first one is the legacy SW and the second one is the modified one.
I put probes on them, and the legacy one gets the 250,000 from the Value embedded. The modified one it is supposed to get it from the sample rate path, please let me know if this is enough info, thanks.
LabVIEW Intermediate I level!
Attachments:
sample rate-load state legacy.JPG 174 KB
sample rate-load state modified.JPG 198 KB -
How to read OLE objects from Access ??
Hi,
I have an field of type OLE in my Access Database table. This field has some files stored in it in the form of attachment. The file types of the OLE objects can be different (xls,txt,doc). Now, I want to query the database and find the extension of the files and save it occordingly using java.
I'm using the following now.
JdbcOdbcInputStream jois = (JdbcOdbcInputStream) rs .getBinaryStream("SupportingData");
byte[] supportingData = jois.readData();
String data = new String(supportingData);
I'm getting data in binary format and when I try to look into it, all I can see is the header info of the file.
Is there anyother way to read the OLE object easily ?
Please suggest.
Thanks,
MaryHow to read appended objects from file with ObjectInputStream? The short answer is you can't.
The long answer is you can if you put some work into it. The general outline would be to create a file with a format that will allow the storage of multiple streams within it. If you use a RandomAccessFile, you can create a header containing the length. If you use streams, you'll have to use a block protocol. The reason for this is that I don't think ObjectInputStream is guaranteed to read the same number of bytes ObjectOutputStream writes to it (e.g., it could skip ending padding or such).
Next, you'll need to create an object that can return more InputStream objects, one per stream written to the file.
Not trivial, but that's how you'd do it.
Maybe you are looking for
-
Hi all, I've setup the IisProxy to work as an intermediate HTTPS server to our WAS 6.40 J2EE Server. When we try to access the portal HTTPS we receive the following error: IisProxy.dll: 500 Internal Server Error +ProxyWorker(): IOException: SapSSLSes
-
Our customer wishes the overtime hours to be computed in the following manner: 1. Accumulate all the approved extra hours worked by the employee during the calendar month. 2. Accumulate all the LOP hours for the employee for the calendar month. 3. Co
-
Upgrading pcre to 8.34 causes errors in mediawiki
A breaking change in pcre-8.34 causes a bug in mediawiki where many of the pages show up blank (with no content), because of a PHP error happening under the covers. The bug has been reported and fixed upstream. This won't be fixed in the Arch package
-
Safari 5 cannot run on windows XP pro
I am a bit confused about this problem. Reading some topics I saw that solution for my problem could be to delete or move "safari" folder from C:\Documents and Settings\user name\Application Data\Apple Computer. But this doesn't work for me. Also I t
-
RANGES : r_matnr FOR mara-matnr . SELECT lifnr matnr INTO CORRESPONDING FIELDS OF TABLE t_data FROM zdata WHERE lifnr = p_lifnr. LOOP AT t_data . r_matnr-sign = 'I' . r_matnr-option = 'EQ' . r_matnr-low