DickG Posted January 19, 2016 Posted January 19, 2016 I have a text file whose last line ends in a CRLF (seen by using SciTE's View > End of line). There is an empty line below it and it's last. I've tried _FileCountLines(), but it ignores the last line if it's empty. So although SciTE shows the last line as empty, FileCountLines() tells me it's 22 (instead of 23, for instance). I've tried reading the last line with FileRead(), then using StringRight($Last_line, 1), but it does not see the CRLF. Is there a way to determine if the last line is empty?
Moderators Melba23 Posted January 19, 2016 Moderators Posted January 19, 2016 DickG, I would suggest reading the whole file and then checking if there is a @CRLF at the end: $sContent = FileRead("File_Path") If StringRight($sContent, 2) = @CRLF Then ConsoleWrite("Blank line" & @CRLF) Else ConsoleWrite("No blank" & @CRLF) EndIf Note that @CRLF is actually 2 characters (@CR & @LF or 0x0D0A). M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Reveal hidden contents ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
mikell Posted January 19, 2016 Posted January 19, 2016 (edited) FileReadLine ( "filehandle/filename", -1 ) Edit : doesn't work Edited January 19, 2016 by mikell
jguinch Posted January 19, 2016 Posted January 19, 2016 Not sure, but it should work : $sContent = StringRegExpReplace(FileRead("test.txt"), "\r\n(?=\r\n)$", "" ) Reveal hidden contents Network configuration UDF, _DirGetSizeByExtension, _UninstallList Firefox ConfigurationArray multi-dimensions, Printer Management UDF
DickG Posted January 19, 2016 Author Posted January 19, 2016 On 1/19/2016 at 7:08 PM, Melba23 said: DickG, I would suggest reading the whole file and then checking if there is a @CRLF at the end: $sContent = FileRead("File_Path") If StringRight($sContent, 2) = @CRLF Then ConsoleWrite("Blank line" & @CRLF) Else ConsoleWrite("No blank" & @CRLF) EndIf Note that @CRLF is actually 2 characters (@CR & @LF or 0x0D0A). M23 Expand Thank you, Melba! That worked for me! My mistake was checking only the last character.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now