Truncate a file: Difference between revisions
Content added Content deleted
(Added Erlang) |
(→{{header|Lasso}}: Added Lasso contribution) |
||
Line 352: | Line 352: | ||
} |
} |
||
}</lang> |
}</lang> |
||
=={{header|Lasso}}== |
|||
<lang Lasso>define file_truncate(path::string, size::integer) => { |
|||
local(file = file(#path)) |
|||
fail_if(not(#file -> exists), -1, 'There is no file at the given path') |
|||
fail_if(#file -> size < #size, -1, 'No point in truncating a file to a larger size than it already is') |
|||
#file -> setSize(#size) |
|||
} |
|||
local(filepath = '//Library/WebServer/Documents/Lasso9cli/trunk/testing/lorem_ipsum_long.txt') |
|||
stdoutnl(file(#filepath) -> readbytes) |
|||
stdoutnl('Original size: ' + file(#filepath) -> size) |
|||
file_truncate(#filepath, 300) |
|||
stdoutnl(file(#filepath) -> readbytes) |
|||
stdout(file('Truncated size: ' + #filepath) -> size)</lang> |
|||
Output: |
|||
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris consequat |
|||
ornare lectus, dignissim iaculis libero consequat sed. Proin quis magna in |
|||
arcu sagittis consequat sed ac risus. Ut a pharetra dui. Phasellus molestie, |
|||
mauris eget scelerisque laoreet, diam dolor vulputate nulla, in porta sem sem |
|||
sit amet lacus. Aenean sed volutpat magna. Vestibulum lobortis mollis lectus, |
|||
eu semper quam congue at. Donec ac ligula a neque tincidunt elementum. Nam |
|||
urna felis, interdum non ullamcorper eget, commodo viverra ligula. Fusce cursus |
|||
dolor in nisl tincidunt non sagittis libero elementum. Maecenas rhoncus ornare |
|||
gravida. Nullam luctus pulvinar lorem, laoreet aliquet massa malesuada eget. |
|||
Original size: 692 |
|||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris consequat |
|||
ornare lectus, dignissim iaculis libero consequat sed. Proin quis magna in |
|||
arcu sagittis consequat sed ac risus. Ut a pharetra dui. Phasellus molestie, |
|||
mauris eget scelerisque laoreet, diam dolor vulputate nulla, in porta sem |
|||
Truncated size: 300 |
|||
</pre> |
|||
=={{header|Liberty BASIC}}== |
=={{header|Liberty BASIC}}== |