try {
                         fileStream = new FileInputStream(fileName);
                         boolean questionnaireNumExists = readLines(fileStream, questionnaireNum);
                         if (!questionnaireNumExists) {
                            dataLine += sQuestionnaireNum; 
                            dataLine += ",";
                         else System.out.println("The questionnaire number you have entered already exists," +
                                                 " re-enter a number");
                    catch (Exception e) {

The compiler skips the try{} and goes directly to the catch{} ... any ideas what might be wrong?

It can't "skip the try". An exception is occurring and you need to figure out what it is. I would recommend putting e.printStackTrace() in your catch block.