AnsiString to zmienną przechowująca pojedynczy element, a TStringList to lista zawierająca wiele elementów TStringList, nie można dokonać konwersji z AnsiString na AnsiString, tutaj konwersji jest niepotrzebna.
Przypuszczam, że chodzi Tobie raczej o to jak wrzucić na listę TStringList wartość zmiennej AnsiString zawierającej znaki \n
Otwórz można umieścić w takiej zmiennej dwie kreski ułamkowe odwrócone, wtedy na liście znajdzie się tylko jedna kreska. Kreska ułamkowa oznacza, ze chcesz uwzględniać jakieś znaki specjalne, dlatego możesz to zrobić tak:
- Kod: Zaznacz cały
AnsiString tekst = "jakiÅ› tekst\\n"; // dwie kreski
Lista->Add(tekst);
To czasami może nie wystarczy, gdy np. zmienna z jakichś powodów nie może zawierać dwóch ukośników, wtedy można dokonać przed wrzuceniem na listę zamiany znaków poprzez dodanie dodatkowej kreski, ale nie do zmiennej, czyli zawartość zmiennej się nie zmienia, lecz do samej listy:
- Kod: Zaznacz cały
AnsiString tekst = "jakiÅ› tekst\n"; // pojedyncza kreska
String result = StringReplace(tekst, "\n", "\\n", TReplaceFlags() << rfReplaceAll); // tutaj następuje zamiana znaku \n na \\n
Lista->Add(result);