Converting Mac/Unix line breaks to DOS

I have a text file I regularly have to import into a web application, and the line breaks need to be DOS for it to work. I've been opening/saving as with TextWrangler, which can convert the line breaks.
Is there a way to create a folder action or automator workflow that would automatically convert the line breaks every time that file (it's always the same file name and in the same folder) is placed in the folder?

I found this:
http://forums.macosxhints.com/showthread.php?t=125
gives a few options, including a shell script.

Similar Messages

  • Applescript batch convert DOC to TXT with line breaks

    Hey guys, I recently got stuck at work having to convert over 1,000 DOC files to TXT files with line breaks.
    I've found online several different Applescripts that work great at converting DOC files to TXT files but I can't find one that will do the TXT files with line breaks.
    If anyone has a script that can do this I would be crazy grateful.
    Converting these one by one with Word is taking forever to do.
    Thanks for any help you can give me.

    Excuse me for a moment for speaking harshly to you.  You are causing yourself utterly unnecessary headaches by not being clear with us and not stopping to think, and it's high time you learned that that is an incorrect way to approach anything on a computer.  Consider:
    you don't know what you're doing (in the sense that you don't know what 'text with line breaks' means)
    you don't know (or at least haven't explained) why this needs to be done
    (therefore) you don't know if this needs to be done at all
    (and yet) you are doing it anyway, in a mindlessly repetitive fashion, driving yourself batty and irritating me
    At least for the time being, humans are the ones who think and computers the ones who grunt away mindlessly; try to reverse those roles and everything gets done badly and slowly. Stop, look, think, plan ahead - that's what your brain is good at if you give it a chance.
    Now, as far as I can tell from poking around the web, 'text only with line breaks' means that the document  is saved as a plain-text file, but with a carriage return linefeed combination (CR/LF) as a paragraph delimiter (this is a Windows format - unix uses a single linefeed, Macs might use a single carriage return or a single linefeed). I don't know why anyone would want that format - most software will convert that seamlessly (or at least can be told to convert that).  Are you trying to feed this into some dinosaur of a database?  At any rate, if that's what you want, this script should do it. caution, this script overwrites the original files; I suggest you make a copy of one or two files in a separate folder, and run the script on them first to check that the output works for whatever reason you're doing this:
    set baseFolder to choose folder with prompt "Choose a folder of files to process"
    tell application "Finder"
              set fileList to (every file of baseFolder whose name extension is "txt") as alias list
    end tell
    repeat with thisFile in fileList
              set itsText to read thisFile
              if (offset of (return & linefeed) in itsText) = 0 then
      -- file is not already formatted with CR/LF, so convert
                        set itsChunks to tid(itsText, {return, linefeed})
                        set itsNewText to tid(itsChunks, return & linefeed)
                        set fp to open for access thisFile with write permission
                        set eof of fp to 0
      write itsNewText to fp as text
      close access fp
              end if
    end repeat
    on tid(input, delim)
      -- handler for text items conversions
              set {oldTID, my text item delimiters} to {my text item delimiters, delim}
              if class of input is list then
                        set output to input as text
              else
                        set output to text items of input
              end if
              set my text item delimiters to oldTID
              return output
    end tid

  • Applescript batch convert .RTF to .TXT with line breaks

    Hey guys, looking for help with an Applescript that can change a .RTF to a .TXT with line breaks.
    I have an Applescript that will go from a .DOC to a plain .TXT but haven't found anything to get from the .RTF to a .TXT wth line breaks.
    I'm doing this for Avid's Script Sync.
    Thanks for the help.

    Ok, you obviously mean something specific by "line breaks" that you're not being clear about.  are you looking for a specific kind of line ending: Mac style carriage return (CR) ending? Windows style carriage return line feed (CR/LF) endings, unix style line feed (LF) endings?  textutil provides LF by default (it's a unix utility after all); if you need a different line ending you'll need to pipe it through tr or modify it via applescript after you've done the conversion

  • Using sed to translate dos line ends to unix line ends.

    Here is my first attempt at translation. I read in the sed man page how \ acts differently, but I see references to \r etc.
    I have a text file. I do not know if it has \r\n or \r as line ends.
    so I want to
    change \r\n to \n
    then change \r to \n
    Thus I end up with unix line ends.
    mac $ echo -ne  "1\r\n2\r\n" | sed "/\r\n/\n/g"
    sed: 1: "/\r\n/\n/g": invalid command code \
    mac $ 
    I left out the Mac conversion of \r to \n.
    I did a google search looking for the conversion. Lots of attempts at conversion. Lots of people eliminated the \r, that wasn't my idea. I moved to Perl after giving up on sed. Thanks everyone who read & responded to my previous Perl post.
    Robert

    Cole Tierney wrote:
    Sed on linux will honor carriage returns entered as
    . BSD sed does not appear to. I've confirmed this on Mac OS 10.3.9 and 10.4.11. On those systems you need to enter a carriage return as a literal using control-v control-m. The carriage return is then displayed as ^M. This can be confusing in forums since people will try to enter it as it is displayed (shift-^ shift-m).
    I was unfamiliar with this method of escaping. I saw references to this in my Google search. I am using the commands in an
    Applescript, so I didn't know how to enter.
    http://discussions.apple.com/edit!default.jspa?messageID=12681001
    My work around is to let bash deal with the carriage return using $'
    '. The trade off is you then have to look at a lot of single quotes. I find it easier to think of it in a couple steps. To expose the $'
    ' to bash you first split the sed with a couple single quotes at the point where you want the carriage return to appear.
    sed 's///' <- initial
    sed 's/''//' <- split
    sed 's/'$'
    ''//' <- insert
    </div>
    I didn't know about this use of $.
    If were dropping down to bash, then what is the deal with this:
    mac $ echo -ne  "1
    2
    " | sed  's/'"
    "'//' | hexdump
    0000000 310d 0a32 0d0a                         
    0000006
    I thought double quotes escaped things.
    The input for your second example has a line with more than one carriage return. My sed only deletes one carriage return per line. Another option is to anchore the match at the end:
    sed 's/'$'
    ''$//'
    I saw the linux version of this, but didn't see the trick of the $ forcing line end and the linux version didn't work for me on Tiger.
    This ends my quest for a tiger version of sed.
    (( At least for DOS, I think I'll forget the classic version of Mac OS. ))
    Thanks.
    Robert

  • Replace Mac line breaks with Windows linebreaks?

    Is there a simple AppleScript that could process a plain text file created on a Mac and replace the line breaks with Windows-compatible \r\n line breaks?
    I thought this would be a very simple task but have been searching for quite a while and can't find anything.
    Thanks.
    Paul

    There are several approaches to this. Here's one of them:
    set theFile to (choose file)
    set MacText to paragraphs of (read theFile)
    set {oldDelims, my text item delimiters} to {my text item delimiters, (return & linefeed)}
    set WindowsText to MacText as text
    set my text item delimiters to oldDelims
    set outputFile to (open for access theFile with write permission)
    set eof outputFile to 0
    write WindowsText to outputFile
    close access outputFile
    To explain, the first line asks you to choose the file in question - you could use any technique to identify the file, including hard-coding the path or using a drag-and-drop handler.
    The second line gets the current paragraphs and calls them 'MacText'
    The third line saves the current text item delimiters in oldDelims and sets the new text item delimiters to the CR+LF combination.
    The fourth line performs the magic of transforming the file. It does this by coercing the list of paragraphs (obtained in line 2) into a single text block, and it inserts the current text item delimiters between each text item, miraculously giving you CRLF-terminated paragraphs.
    The fifth line restores the text item delimiters to whatever they were before (you don't know what they were, but don't need to know what they were, as long as you restore the previous setting - it's unlikely you want CRLF moving forwards).
    The rest of the script (lines 6 through 9) reopen the file you originally selected, sets the EOF to 0 (effectively wiping the file contents), then writes the CRLF-terminated text to the file and finally closes the file.
    Note that some people might suggest using text item delimiters to break up the original text file on CRs but that would be wrong IMHO. The reason is that 'paragraphs of' can detect and handle both CR and CRLF-terminated paragraphs, leaving you with clean paragraphs into which you insert CRLFs.
    This means that if the file originally had CRLF-terminated paragraphs you'd end up with the same data, but at least there was no harm done.
    In contrast, if you simply searched for CRs and replaced them with CRLFs you could have the situation where you selected a CRLF-terminated file (maybe you didn't realize it was already in the Windows format) and your script would blindly replace each CR with CRLF, meaning you'd end up with CRLFLF combinations, which is very wrong.

  • Convert rows to columns and put line break in between using t-sql

    Hi,
    I have a table with 5 columns..and my source data looks like this..
    RecordID  ID    Display          AddressType   EmailAddress
        1           1      GeneratedBy       From           
    [email protected]
        1           1      ReceivedBy         To               
    [email protected]
        1           1      ReceivedBy         To              
    [email protected]
        2           1
        3           1      GeneratedBy       From         
    [email protected]
        3           1      GeneratedBy       From          [email protected]
        3           1      ReceivedBy         To             
    [email protected]
    I need  t-sql to show output as..
    RecordID   ID    FullDisplay
       1       1     GeneratedBy  From -
    [email protected]  < CHAR(13) - Need Line Break here so that it goes to 2nd line>
                       ReceivedBy   To   - 
    [email protected] ; To -
    [email protected]
       2       1      Null
       3       1      GeneratedBy From -
    [email protected] ; From -
    [email protected]  < CHAR(13) - Need Line Break here so that it goes to 2nd line>
                      ReceivedBy  To   -
    [email protected]
    Display field will have 3 values - "GeneratedBy" , "ReceivedBy"  or Null
    AddresType field will have  3 values - "From" , "To" and Null.
    In the above example, Those 7 records belongs to ID=1.
    Whenever RecordID is same I want to show everything in one line with line breaks in between.
    In the above example RecordID=1 has 3 rows, display it as 1 row. But Whenever 'ReceivedBy' is there for same recordID put a line break before "ReceivedBy"
    create Statement:
    Create Table SampleTest
    (RecordID int null, ID int null , Dispplay varchar(20) null, AddressType varchar(6) null , EmailAddress Varchar(25) null)
    Insert Statement:
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'ReceivedBy','To','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'ReceivedBy','To','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (2,1,  Null,Null,Null)
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'ReceivedBy','To','[email protected]')
     Thanks!
    sql

    Try below
    drop table SampleTest
    GO
    Create Table SampleTest
    (RecordID int null, ID int null , Display varchar(20) null, AddressType varchar(6) null , EmailAddress Varchar(25) null)
    --Insert Statement:
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'ReceivedBy','To','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (1,1,'ReceivedBy','To','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (2,1, Null,Null,Null)
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'GeneratedBy','From','[email protected]')
    Insert into SampleTest (RecordID ,ID,Display,AddressType,EmailAddress) values (3,1,'ReceivedBy','To','[email protected]')
    with CTE1 as
    select ROW_NUMBER() over(PARTITION by RecordID ,ID,Display order by EmailAddress)rno,* From SampleTest
    ), CTE2 as (
    select RecordID ,ID,'GeneratedBy '+ STUFF(( SELECT '; From - ' + EmailAddress AS [text()]
    FROM CTE1 b
    WHERE
    a.RecordID=b.RecordID and a.ID=b.ID and b.Display = 'GeneratedBy'
    FOR XML PATH('')
    ), 1, 2, '' ) GeneratedBy,
    'ReceivedBy '+ STUFF(( SELECT '; To - ' + EmailAddress AS [text()]
    FROM CTE1 b
    WHERE
    a.RecordID=b.RecordID and a.ID=b.ID and b.Display = 'ReceivedBy'
    FOR XML PATH('')
    ), 1, 2, '' ) ReceivedBy
    From CTE1 a
    group by RecordID ,ID
    select RecordID ,ID,GeneratedBy +CHAR(13)+ ReceivedBy as FullDisplay from CTE2
    Thanks
    Saravana Kumar C

  • Will Newer Versions of InDesign Still Open/Convert Mac PM 6.5 Files?

    All right, you've convinced me. I can see that holding on to old technology is not a viable long-term solution regarding PageMaker vs. InDesign. Eventually my old PowerMac Quad will fail and not be able to be repaired. At that point I would be forced into an Intel Mac and new software. I have a ton of PageMaker 6.0 and 6.5 files and will need to convert them to a new version of InDesign. I realize PM6 files will not work with InDesign, that I have to do the initial conversion via PM6.5.
    I've studied the PageMaker forum hoping to see if this specific question has been advanced and answered but saw none. If in fact it has been addressed please understand that at least I did try before writing this.
    My question is this: Will all versions of InDesign IE: CS1, CS2, CS3, CS4 or CS5 open PageMaker 6.5 files? Or will I have to go back to InDesign 2.0, copy/convert all the PM6.5 files and then begin the upgrade process? Surely (and hopefully) Adobe provides a direct upgrade path to the newest InDesign version once you have all PageMaker 6.5 files, rather than making you upgrade to each version individually. If Adobe provides a direct upgrade to the latest InDesign product will this policy be true throughout it's product line? I also have older versions of PhotoShop, Illustrator and Acrobat to be concerned with. (I know, I know... the last couple of sentences are not about PageMaker-sorry)
    If anyone can answer this, please let me know so I can plan accordingly. Begrudgingly, I will probably begin the transition to InDesign soon. Looks like I'm in for a long, long study period to get up-to-speed. Bye-bye PageMaker, bye-bye PowerMac, so sad to see you go.

    Chuck, I am not very qualified t
    o answer your questions, but will do my best within my limi
    tations (I am still using InDesign CS3, and I haven't had to work with PageMaker files for years).
    I did open many PM 6.5 files with ID2, and I have just opened a couple in ID3. These two last were rather simple jobs, and opened without a hitch. When I had to open PM files with ID2, I remember some opened flawlessly, most with relatively minor glitches, and some required a lot of work to look the same than the originals. And yes, each version of ID that I have used opens PM files directly; no need to pass from older to newer versions.
    Another thing I remember is that I also had a great number of PM files, which I still keep, but the ones that I have really had (needed) to convert are just a small fraction of them. Maybe you'll live a similar experience.
    As for the learning curve, it surely is there; but in my case, I found it not at all steep, quite the contrary: I was surprised to find how fast I got used to the "new version" of PageMaker. Maybe if I did the move now (to version CS5) I wouldn't find the transition so easy as to ID2. And I know of people who have not found it easy, but don't seem to reacall anyone complaining of how very difficult it was for him/her.
    As for upgrading several products at the same time, you'll have to think carefully what your future needs are really likely to be. You see, Adobe offers a very attractive price for "the whole lot", what they call the Creative Suite. I have however heard many complaints of people who feel they were "trapped" when they followed that route, because when it comes to upgrades, they can only upgrade the whole suite, not each product at a time. So you may be stuck with upgrading products you don't use and think will never use. Sort of what happened with Word and Excel, wich were the basis of MS Office: I understand that nowadays you cannot even buy each product separately, although I may be wrong.
    If I were you, most probably I would upgrade at this time each product separately, keeping in mind that perhaps later it could be better for me to buy the Suite. And regarding this route: Adobe still offers a very convenient upgrade price from PageMaker to InDesign (no choice but the latest version), but nobody knows for how long they will keep this offer. I was one of those who though that when V5 was launched, Adobe would stop selling PageMaker (something that in my opinion they should have done when InDesign appeared), and the upgrade offer would end, but apparently I was wrong on both counts. Just be warned that this particular upgrade offer may be gone any day...
    As for parting with such old and faithful friends, part of the words of a song my grandmother used to sing when I was a child came immediately back to my mind: Un viejo amor no se olvida ni se deja... an old love is never (really) forgotten or abandoned in my free translation, where I use the word "love" with the meaning of "loved person", and the optional "really" I added comes form the rest of the words of the song.
    Hope this helps.
    Initial extra line breaks kindly provided by the software.

  • LE7:Score Layout:Global Format:Maximum Bars per Line - Line Break Bug!

    Hello
    This problem occurs in Logic Express version 7.
    (I am using MacOS version 10.4.2 on an eMac)
    I am currently compiling and editing a large score for a big band composition consisting of 22 parts:
    Flute 1
    Flute 2
    Clarinet 1
    Clarinet 2
    Alto Sax 1
    Alto Sax 2
    Tenor Sax 1
    Tenor Sax 2
    Baritone Sax
    Trombone 1
    Trombone 2
    Trombone 3
    Trombone 4
    Trumpet 1
    Trumpet 2
    Trumpet 3
    Trumpet 4
    Guitar
    Keyboard
    Electric Bass
    Percussion 1 (Kit)
    Percussion 2 (Aux)
    I am creating the score in a separate file, and I am combining parts into 1 stave each by instrument like this:
    Flute 1 & 2
    Clarinet 1 & 2
    Alto Sax 1 & 2
    Tenor Sax 1 & 2
    Baritone Sax
    Trombone 1 - 4
    Trumpet 1 - 4
    Guitar
    Keyboard (2 staves)
    Bass
    Percussion
    Each instrument, with the exception of keyboard which has 2 staves, consists of one stave, making up systems of twelve staves each. By sizing down each score style to 2,
    I have managed to fit 2 systems onto each page, therefore significantly reducing the amount of paper needed.
    The problem comes when organising the layout of my score,
    in particular, the line breaks. Using layout:global format, I have limited the maximum number of bars per line to 8, both in the page edit and normal score mode.
    I am trying to divide up my score so that there are 8 bars per system. Using the white arrow tool, I am dragging bars up and down in order to achieve this.
    However, when I get 30 odd bars in, I discover a system with 12 bars crammed into it - and even printing it off, it is clear that the system could benefit with less bars; the notation is squashed up together and not very easy to read.
    THIS IS THE ACTUAL PROBLEM:
    So I tried using the white arrow to move the last 4 bars down onto the next system, and a bug occurs where I end up with about 20 bars on the system, oddly distorted, the first few bars of which are squashed up together at the beginning of the line, and the last bar of which is stretched far off the right hand side of the page out of view. Then the next 20 or so bars are no where to be seen (probably far off the right hand side of the page) before the system below.
    If you dont know what I am talking about, I could provide a screenshot if you request.
    I have tried everything to get 8 bars on that particular system; dragging the stretched bar downwards, dragging squashed bars downward, moving bars down 1 by 1, moving bars onto the system above, moving bars away from the system below (to make room for the 4 bars that I want to move from above), adding more bars and dragging them down, but none of these methods have worked. I am either stuck with 12 bars crammed onto one system and 4 bars on the next or an oddly distorted version of the system which cannot possibly be read. Even when I settle with the unsatistactory former, I encounter further problems on subsequent systems below, some systems of which are already distorted.
    All I want is to have 8 bars per system, it should not be too much to ask! The layout:global format:maximum-bars-per-line calculation seems to be redundant, even when I reset the default line breaks - it just does not automatically set 8 bars per line, which it should do. Is there not an option to determine bars individually by number onto their respective lines, without having to use the white arrow graphic layout tool?
    The problem is extremely frustrating, and it is preventing me from completing, presenting and handing in a score for my university music composition.
    I have no other score producing software, and starting it
    from scratch on paper is going to take me weeks, because it consists of 830 12/8 bars in 22 parts, and I need to get it ready by next term!
    Any help would be extremely helpful and much appreciated, especially a patch or a useful way round. It could be related to memory, or hard drive space, as I have experienced similar problems in the past, where my score has been stretched off the page during a time when I have had little disk space...and this is a very large piece of music which might stretch the score capabilities of Logic.
    If so, has anyone got any suggestions?
    Thanks!
    Rory
    eMac   Mac OS X (10.4.2)  
    eMac   Mac OS X (10.4.2)  

    nope just cutting should work.
    here are some things to try:
    1. try assigning a different score style. for the regions. duplicate and then adjust the default ones if necessary.
    2. try creating a new instrument set. in fact delete them and make a new one (use the key command: create instrument set from selected)
    3. it may be a formatting problem so check:
    in global layout constant spacing (try 8 or 9) and proportional spacing (try 45 or so). then try factory defaults.
    4. try copying and pasting the midi into a brand new region and looking at the score for that.
    5. try fiddling with the layout tool drqagging bars up or down.
    normally simply cutting the region of just one object is enough to force a redraw. maybe try it on all of the regions. what happens when you double click on a region?

  • Carriage Returns / Line Breaks & PDF

    I have a requirement to display a customers address in 1 column of a PDF report.
    The address is stored in the RPD as Address1, Address2, etc. etc.
    I use the answer of the question "Carriage Returns / Line Breaks" as a basic startup.
    ( Question Registered the 02/24/10 from user12673225 )
    I get a great result in the HTML report.
    But, when I print the report in PDF the HTML control codes appear in the PDF report.
    e.g.
    LTHEA A | P.O. BOX 877 *<br* | KY | VERNON A 100000479 |
    VERNON | /> GRAND...........|....|.............................|
    ...........| CAYMAN.............|....|.............................|
    ...........| KY1-1103 *<br*......|....|.............................|
    ...........| /> CAYMAN.........|....|.............................|
    ...........| ISLANDS.............|....|.............................|
    Presently I generate the report in HTML then I convert it in PDF format.
    Is there a way to print the report directly in PDF without the html control appearing in clear in the pdf file. Is is possible to do the job in one step only?
    Edited by: user9214078 on Feb 24, 2010 11:42 AM

    Hi Will,
    The [   instead of   <  does not work.
    The character "[" is not recognized as an HTLM control code.
    It worth the try.
    Thanks
    Gilles.

  • Line break in txt file

    Can someone help me?
    I just wanna make a line break in a txt file...
    I tried it this way
    FileWriter fw = new FileWriter("W:\\write.txt");
    fw.write(string1 + "\n" + string2);
    fw.close();
    I don't know why it doesn't work.
    in the file it apears just a black block, but if i copy it in this text area, theres automaticly a line break
    thx for your support
    Guardian

    Everything has been said, but I thought I'll just make it more clearly :-)
    The thing is:
    Unix use a line break; <or was it vice versa>
    Afterwards someone decided text had to be devided in linebreaks and paragraph;
    That's why you have <p> and <br> in html
    Now line break just means, I'm on the end of a line and i must break but i don't want to
    so please if you can, hold it on the same line when displaying.
    So to keep multiple platform oparability it's a good thing to use both:
    newline character + carriage return = break to other line

  • How can I create a line break in pages for iPad?

    On the Mac you can hold the shift key while pressing the return key to creat a line break. Only pressing the return key will creat a new paragraph of course.
    On the iPad you only can creat paragraphs. Pressing the shif key does not change that.
    Does anybody know how to force a linebrek on the pages app for iPad?

    Tap and hold where you wish to insert the line break. Select Insert from the pop up menu, then Line break.
    this might be helpful for future reference: http://help.apple.com/pages/ipad/1.7/

  • Line breaks in Word document

    Hello,
    I am running into an issue when I open a Word document in Pages.  Line breaks are being converted into "  Did not happen in previous versions of Pages (I am on 5.1).  Same thing happens when I open a ppt in Keynote - so could be a Microsoft issue.
    Please help

    'Course it's all custom scripts, written for and tailored to each individual workflow. I even manage two of those workflows at the office, for two distinctly different publishing trajectories, each with very different needs, and thus very different scripts. Only the very basic processing of files is the same, but after that they diverge real fast, and thus I have to maintain two different sets of scripts.
    There is no single workflow tht "works for everyone", and there certainly is not a single script that does everything you imagine it could do.

  • Output with line breaks seemingly randomly placed

    Hola -
    I've adapted Tyler Muth's RSS feed article (http://tylermuth.wordpress.com/2008/01/22/producing-rss-from-plsql/) for the most part successfully; however, my output has breaks in the lines at inappropriate places, often in the mddle of an XML element tag for example. The placement of the breaks varies if I change the values of l_idx, l_len, l_defrows, l_maxrows, and l_desclen, but the breaks persist. They're not reflected in the code below but I've added the utl_file.fflush to no good effect.
    Examples of broken output:
    <pre>
    <title>Three
    prehistoric inventions that shaped us /</title>
    <guid
    isPermaLink="false">226402455778123622</guid>
    <pubDate>Thu, 04 Aug 2011 12:36:22
    EST</pubDate>
    <guid isPermaLink="fal
    se">220922455778123622</guid>
    <item
    >
    </pre>
    It's a lot of data so I won't post it here, but here's the code & the table; any ideas as to where to start investigating will be greatly appreciated.
    Code:
    create or replace
    PROCEDURE "RSSLOOP3" ( fund_in IN VARCHAR2, fund_in2 IN VARCHAR2 := 'XXX')
    is
    -- customizable parameters
    l_title varchar2(255) := ' New Titles Since ' || to_char(sysdate - 90, 'MM/DD/YYYY');
    l_link varchar2(255) := 'replace this' || fund_in || '.rss';
    l_description varchar2(255) := 'This is a feed of changes to items ' || fund_in;
    l_language varchar2(255) := 'en-us';
    -- end customizable parameters
    l_version varchar2(10) := '2.0';
    l_clob clob;
    l_idx pls_integer := 1;
    l_len pls_integer := 255;
    l_defrows pls_integer := 100;
    l_maxrows pls_integer := 100;
    l_desclen pls_integer := 250;
    -- for output to file
    fh UTL_FILE.FILE_TYPE;
    path VARCHAR2(30);
    filename VARCHAR2(30);
    begin
    path := '/http/live/screens/rss/';
    filename := fund_in || '.rss';
    fh := UTL_FILE.FOPEN(path, filename, 'w');
    for i in (
    select xmlelement( "rss",
    -- Begin XML Header Block
    xmlattributes( l_version as "version"),
    xmlelement( "channel",
    xmlforest( l_title as "title",
    l_link as "link",
    l_description as "description",
    l_language as "language"),
    -- End XML Header Block
    -- Begin List of Individual Articles or Items
    xmlagg(
    xmlelement( "item",
    xmlelement("title", x.title),
    xmlelement("link", x.link),
    xmlelement("description", convert(x.description, 'UTF8', 'AL32UTF8')),
    xmlelement("callnum", x.callnum),
    xmlelement("pubDate", to_char(x.updated_on,'Dy, DD Mon RRRR hh24:mi:ss')),
    xmlelement("guid", XMLATTRIBUTES('false' as "isPermaLink"),x.id||to_char(x.updated_on,'JHH24MISS'))
    -- End List of Individual Articles or Items
    ) as result
    from ( -- Actual Database Query that populates the list of Items
    select id,title,link,description,updated_on, callnum
    from drx_rss_feeds
    where (fund like fund_in||'%')
    and rownum < (l_maxrows+1)) x)
    loop
    l_clob := xmltype.extract(i.result,'/').getclobval;
    exit;
    end loop; --i
    --- OUTPUT RESULTS
    for i in 1..ceil(dbms_lob.getlength(l_clob)/l_len) loop
    UTL_FILE.PUT_LINE(fh,(substr(l_clob,l_idx,l_len)));
    l_idx := l_idx + l_len;
    end loop; --i
    UTL_FILE.FCLOSE(fh);
    end rssloop3;
    Table:
    CREATE TABLE "DRX_RSS_FEEDS"
    "ID" VARCHAR2(32 BYTE),
    "TITLE" VARCHAR2(255 BYTE),
    "DESCRIPTION" VARCHAR2(4000 BYTE),
    "LINK" VARCHAR2(1000 BYTE),
    "AUTHOR" VARCHAR2(255 BYTE),
    "UPDATED_ON" DATE,
    "CALLNUM" VARCHAR2(255 BYTE),
    "FUND" VARCHAR2(10 BYTE)
    )

    Or have a look at the Oracle Documentation, for instance at the parameters for utl_file.fopen
    max_linesize Maximum number of characters for each line, including the
    newline character, for this file (minimum value 1, maximum
    value 32767). If unspecified, Oracle supplies a default value of
    1024.It wouldn't surprise me if your randomly placed line breaks are all 1023 characters a part.
    Anton

  • Creating a PDF in pages that retains all line breaks and formatting as source

    Currently when we get pages documents, we convert them to PDF and send them off to be converted by a partner. We do this because said partner doesn't accept pages.
    However, lately we've found issues in PDFs created by pages that do not retain styling nor line breaks correctly.
    Example for line breaks:
    The quick brown fox
    jumped over the lazy dog.
    When converted to PDF it shows exactly the same on the PDF, as it did pages. The paragraph breaks are retain in the pages document, and the PDF looks correct.
    But when you copy/paste the text (which is generally how we test how valid the actual text is) you get something like:
    The quick brown
    fox
    jumped over the lazy dog.
    In some cases we even get line breaks on every word.
    We used the Export to PDF feature, the Print to PDF feature, and even generated a postscript and distilled with Acrobat Pro.
    Does anyone know how to solve this? It seems anything generated with QuartzPDFContext has issues.

    Interesting that preview works, but not Acrobat. Thanks!
    We are using export to word as a second option. The formatting (as in exact spacing and such) isn't always 100% retained. PDF afterall is a representation of what the customer wants. We don't always suggest it but in some type of books it helps.

  • Calendar app. How do i insert a line break in the title of an appointment?

    How do i insert a line break in the title of an appointment?

    Jonny Marshall wrote:
    Hi, I've had this problem for a while now but just can't find the answer anywhere. I keep seeing that 'shift+return' or 'ctrl+return' will create a new line in a cell in numbers but it just doesn't! I can't seem to find a way of doing it. Please help!
    Difficult to guess what is wrong in your system or what you made wrongly.
    Here it work.
    Maybe a problem of corrupted preferences.
    Try to run Numbers from an other User Account.
    If it behaves flawlessly it will be time to try to disable the Preferences files:
    <startupVolume>:Users:<yourAccount>:Library:Preferences:com.apple.iWork.Numbers. plist
    <startupVolume>:Users:<yourAccount>:Library:Preferences:com.apple.iWork.Numbers. LSSharedFileList.plist
    (Also, not numbers related, but if you happen to know how I find out what version of OSX I'm using please let me know.)
    menu :  (Apple)
    menu item : About this mac
    Yvan KOENIG (VALLAURIS, France) jeudi 3 juin 2010 14:41:07

Maybe you are looking for

  • Why Apple Mini-DVI to DVI Adapter couldn't be connected?

    i purchased Apple Mini-DVI To DVI adapter but it couldn't be connected to any port of my macbookpro 13" without retina if you 've solution please advise.

  • Problem in new environment and in old environment.

    Hi gurus I have a problem in data loading we have two environments old and new The data flow in new environment is differ from old The data flow is like this In BW side i have ODS first and from  ODS the data is going to two Cubes But in these  two C

  • Replicated database

    hi all ora 8i on sunsolaris I want to replicate the production database with the standby database. Both are having almost equal resources, which is the best option to create replicated database, it should be COST EFFECTIVE. we generate millions of re

  • Terminal locks up trying to delete folder

    I deleted a folder. Since it entered the trash, whenever I try to empty the trash, it stops responding, won't cancel, and I have to restart Finder (and it doesn't delete the directory). I've tried restarting, repairing permissions, secure delete, for

  • Pass formula filter in navigation?

    I have an answers report with 2 columns, both based on the same measure. One has a 'filter using' clause on a dimensional value and one is unfiltered. The filtered column has navigation to a detail report and I would like the same filter to apply to