• 0

[Delphi] Save to File


Question

Hi All,

I have searched all over the internet for a solution to my problem, but I can't find it. How would I go about saving to a file? I managed to get it to carry out a Save As function with this code:

if SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);

I want it to carry out a Save function, so that if an existing file is already open, the user can save to that file, without having a specify a name in the Save As Dialog.

Thanks in advance,

Smctainsh

Link to comment
https://www.neowin.net/forum/topic/453443-delphi-save-to-file/
Share on other sites

11 answers to this question

Recommended Posts

  • 0
  AndreasV said:

Memo1.Lines.SaveToFile(SaveDialog1.FileName); would do.

I tried that, but it doesn't seem to work. I get an error saying "Cannot create file """.

I want the button to double as a save and save as function - so, I want it to show the Save dialog if the file has not yet been saved, and save to the file if it is already saved.

Smctainsh

  • 0
  AndreasV said:

if SaveDialog1.FileName = "" or SaveDialog1.Execute then

Memo1.Lines.SaveToFile(SaveDialog1.FileName);

I get an error for "" - it says 'Illegal Character in Input File'.

Smctainsh

P.S. Thanks for the quick responses. :D

  • 0
  smctainsh said:

I get an error for "" - it says 'Illegal Character in Input File'.

Smctainsh

P.S. Thanks for the quick responses. :D

Use the a single quote ' not the double quote ".

if SaveDialog1.FileName = '' or SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);

  • 0
  virtorio said:

Use the a single quote ' not the double quote ".

if SaveDialog1.FileName = '' or SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);

Now I am getting a Boolean Error. :( It says that string and boolean are incompatible types.

Smctainsh

  • 0
  virtorio said:

if (SaveDialog1.FileName = '') or SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName);

Sorry, my mistake.

When I save the file, the Save As Dialog appears, even once I have already specified a file name for it.

Smctainsh

  • 0
  smctainsh said:

When I save the file, the Save As Dialog appears, even once I have already specified a file name for it.

Smctainsh

I must admit that I never actually read the code, just looked at the syntax. It should read

if (SaveDialog1.FileName <> '') or SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName)

<> meaning not equal to. Personally I think storing the filename in a SaveDialog is a bad idea, and should be stored in a variable somewhere, most likely as a member of the form you have your Memo control on.

  • 0
  virtorio said:

I must admit that I never actually read the code, just looked at the syntax. It should read

if (SaveDialog1.FileName &lt;&gt; '') or SaveDialog1.Execute then
  Memo1.Lines.SaveToFile(SaveDialog1.FileName)

<> meaning not equal to. Personally I think storing the filename in a SaveDialog is a bad idea, and should be stored in a variable somewhere, most likely as a member of the form you have your Memo control on.

Thank you so much, virtorio! All help received from anyone in this thread has been very much appreciated. :D

Smctainsh

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Microsoft, Indian police bust AI-powered tech support scam ring targeting elderly in Japan by Paul Hill Pop-up scams pretending to be Microsoft Working with India’s Central Bureau of Investigation (CBI), Microsoft recently assisted in busting a scam network that was targeting the elderly in Japan. The CBI raided 19 locations on May 28, leading to the arrest of six key operatives and the taking down of two call centers. The scammers were impersonating Microsoft specifically and using tech support scams against Japanese seniors. The raid led to the seizure of both digital and physical infrastructure, including computers, storage devices, and phones. The scammers were targeting older adults, who are more vulnerable to fraud. To put this activity to an end, Microsoft’s Digital Crimes Unit (DCU), the Japan Cybercrime Control Center (JC3), Japan’s National Police Agency (NPA), and India’s CBI conducted significant cross-border collaboration to trace the criminals. Thanks to the internet, cross-border crimes like these have been around for a while and multinational tech firms like Microsoft are making significant efforts to help law enforcement agencies crack down on cybercrime. Artificial intelligence is also starting to be used to make more sophisticated scams. The evolving threat This case reveals an evolution in how Microsoft’s DCU addresses cybercrime involving tech support fraud. Thanks to AI, scammers have been able to scale their operations. In response, Microsoft has moved away from focusing on individual call centers to target the heads of criminal operations and disrupting their technical infrastructure. Notably, Microsoft’s collaboration with JC3 is the first time the DCU has partnered with a Japan-based organization to assist victims. Microsoft is continually getting tips from JC3 about malicious pop-ups urging recipients to call fake technical support lines that claim to be Microsoft. This data has allowed Microsoft to shut down 66,000 malicious domains and URLs globally since May 2024. Microsoft noted that artificial intelligence is now being used by criminals to scale their operations. Some ways in which these entities leverage AI are for victim identification, writing convincing scam emails and building fake web pages, as well as for convincing translations. Anyone can use AI for malicious purposes so it could increase the number of people or groups carrying out attacks. It also makes attacks much more sophisticated and harder to detect and necessitates better consumer protections and more sophisticated security tools such as passkeys to reduce hacks. Protecting vulnerable populations and what readers can do Tech support fraud attacks have been found by the FBI to disproportionately affect older people, resulting in $590 million in losses in 2023 for just older Americans alone. In this operation that targeted Japanese victims, around 90% of the 200 affected people were over 50. If you’ve ever received suspicious communications from a party claiming to be Microsoft, you should know that Microsoft never sends unsolicited emails or makes phone calls requesting personal or financial information, and it doesn’t offer unsolicited tech support. If you do get any suspicious communications, then you should report it to Microsoft so that it can take action.
    • Firefox is irrelevant in today's internet. Most websites don't work as smooth as any Chromium browsers. Web developers are monopolizing and responsible for this situation.
  • Recent Achievements

    • Week One Done
      luxoxfurniture earned a badge
      Week One Done
    • First Post
      Uranus_enjoyer earned a badge
      First Post
    • Week One Done
      Uranus_enjoyer earned a badge
      Week One Done
    • Week One Done
      jfam earned a badge
      Week One Done
    • First Post
      survivor303 earned a badge
      First Post
  • Popular Contributors

    1. 1
      +primortal
      433
    2. 2
      +FloatingFatMan
      239
    3. 3
      snowy owl
      213
    4. 4
      ATLien_0
      211
    5. 5
      Xenon
      157
  • Tell a friend

    Love Neowin? Tell a friend!