Skip to main content

Life Has A Way

Life always has a way of doing whatever it needs to do. There’s nothing wrong with that thought process. It comes and goes without a second thought. We can’t easily figure out why life does this to us, we have to understand something at some point, but if we don’t? Well, no harm no foul. It’s life and we have to continue going forward to see everything that is out there. There’s nothing we can do about it. Life will move foreward without the ability for us to do anything but wonder what this life will eventually be like in the far distant future. Oh what a joy that could bring about. If life has a way, we will be able to get from point a to point b in no time at all. It feels like a circle at times. A = B = C, isn’t that what the crazy future guy in Star Trek: Voyager tried to explain? Yeah, something like that. It’s quite an interesting thought process to be sure. It’s life though, nothing can be done about it. So let life be what it wants to be, there’s nothing wrong with that tho...

Backing Up A File

 Backing up a file in Java can be fairly simple and straight forward. Let's think about it for a second. You have a file.

  1. You want to be able to store a copy of that file somewhere on your file system.
  2. You either want to keep the original or delete the original.
  3. The format of the filename must be unique, so it doesn't collide with other backed up files.
There are just a few considerations to think about. Here's a solution I came up with in Java:


import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.File;
import java.util.Date;
import java.text.SimpleDateFormat;

public class Backup {

    public static void main(String[] args) {
        if (args.length == 1) {
            File file = new File(args[0]);

            if (file.exists()) {
                try {
                    File dir = new File("archive");
                    if (!dir.exists()) {
                        dir.mkdirs();
                    }

                    Date date = new Date();
                    SimpleDateFormat dt = new SimpleDateFormat("'.'yyyy-MM-dd-HH-mm-ss");
                    Path source = Paths.get(args[0]);
                    Path target = Paths.get(dir.getName(), file.getName() + dt.format(date));

                    System.out.println("Backing up file: " + source + " --> " + target);

                    Files.copy(source, target);
                    file.delete();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            } else {
                System.err.println("The file you specified '" + file.getName() + "' doesn't exist.");
            }
        }
    }
}

As you can see I chose to delete the file at the end of the process. But let's take a look at what this does:

  1. We make sure at least one filenamne is passed in and if it exists we continue.
  2. We create a home for the archived file, in this example we call it archive.
  3. We create a date and format it.
  4. We set a source and a target and output that we are copying the source to the target.
  5. Using Files.copy we do the actual backup.
  6. Then we delete the file at the end of the process.

That's all there is to it. I'm sure there could be a way to refactor this so it's better somehow. I'll have to look into it.

Comments

Popular posts from this blog

Schizoaffective Disorder

I want to say it first began in High School when I thought I was trying to beat the devil. Now when I say I was "trying to beat the devil", I mean I actually thought I was hearing the devil speak to me at night and that I had to find some way to overcome him. Looking back I should have sought professional help then. I remember telling a friend about this experience, and he looked at me like I was nuts. Talk about craziness right? Yeah something like that. I believe my first mental break was when I was serving a mission for The Church of Jesus Christ of Latter-Day Saints . I wanted to go home so bad. It could have just been homesickness . But...there was something more to it. About halfway through I was just done with it all. I had had enough of rejection and wanted to go home. But I was afraid that I was unable to because I would simply be told no . I know that sounds silly to people. But that's what happened. I didn't b...

Didn't Sleep

 What's the point of sleep anymore if I can't sleep? I don't think I slept any good last night. I was awake at 3 am wondering to myself, what on earth am I doing awake? Yeah, that happened. It doesn't make any sense. Fortunately, it's the weekend. So, I can catch up on sleep tonight. I don't have to be anywhere tomorrow, so it's a good opportunity to actually sleep for once. Whatever the case, I hope I'll be able to fall asleep and stay asleep. We will see what happens.

ColdFusion

So recently, I decided to include ColdFusion in my Linux setup. I was going to just run Tomcat and install CF that way, but well I decided against that route and installed ColdFusion 9 using the regular methods. It's been running quite smoothly if I do say so myself. I of course don't have the installation instructions anymore. Oops. I suppose I could Google for them again and make a copy or something. But well if my server ever crashes and I have to start all over again, yeah I'll worry aobut it then. FOr now, not so much. So here's my current setup: MySQL PHP Perl ColdFusion 9 Yeah something like that. Not too bad if I do say so myself. Of course what else would I say about it? You know I wouldn't ever say anything bad about my own server setup. Well unless I already have, if that's the case. Oops. Disregard that blog post. So yep, I think I'll have some fun with all of that for sure.