Skip to content

Arduino SD class / File class: feature request: readln() missing (... and more...) #11635

Open
@dsyleixa

Description

@dsyleixa

a method
.readStringUntil(EOL) or perhaps a new .readln()
is missing: to read an entire textline all at once until end of line, discarding any EoL/LF/CR
(e.g., text files on an SD may have \n or \r\n at EoL, so readStringUntil('\n') or readStringUntil('\r') may fail or mess it up)

edit, perhaps sth like my workaround

File SD_File;
String buf;
buf = SD_File.readStringUntil('\n');
int blen=buf.length();
if( blen>=1 && buf[blen-1]=='\r' ) buf.remove(blen-1, 1);

Activity

added
Component: CoreRelated to the code for the standard Arduino API
feature requestA request to make an enhancement (not a bug fix)
on Jul 25, 2021
changed the title [-]Arduino SD class: feature request: readln() missing[/-] [+]Arduino SD class / file class: feature request: readln() missing[/+] on Aug 10, 2021
changed the title [-]Arduino SD class / file class: feature request: readln() missing[/-] [+]Arduino SD class / File class: feature request: readln() missing[/+] on Aug 10, 2021
changed the title [-]Arduino SD class / File class: feature request: readln() missing[/-] [+]Arduino SD class / File class: feature request: readln() missing (... and more...)[/+] on Aug 11, 2021
dsyleixa

dsyleixa commented on Dec 29, 2021

@dsyleixa
Author

PS;
similar to

#include <SD.h>
File myFile;
SD.remove("example.txt");

now additionally rename and copy functions would be appreciated:

int SD.rename("example.txt", "newname.txt");
and
int SD.copy("example.txt", "newname.txt");

Return value
If the file is successfully renamed or copied, a zero value is returned.
On failure, a nonzero value has to be returned.
Perhaps, an errno variable is also set to a system-specific error code on failure.

dsyleixa

dsyleixa commented on Dec 29, 2021

@dsyleixa
Author

additionally, in <SD.h> some functions seem to be undocumented (https://www.arduino.cc/en/reference/SD), e.g.:

File myfile;
myFile.readStringUntil(terminator)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Component: CoreRelated to the code for the standard Arduino APIfeature requestA request to make an enhancement (not a bug fix)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @per1234@dsyleixa

        Issue actions

          Arduino SD class / File class: feature request: readln() missing (... and more...) · Issue #11635 · arduino/Arduino