Here you can find the source of quoteIfNeeded(String input)
public static String quoteIfNeeded(String input)
//package com.java2s; /*/*from www .j a v a2 s . c om*/ * StringUtil.java * * This file is part of SQL Workbench/J, http://www.sql-workbench.net * * Copyright 2002-2017, Thomas Kellerer * * Licensed under a modified Apache License, Version 2.0 * that restricts the use for certain governments. * You may not use this file except in compliance with the License. * You may obtain a copy of the License at. * * http://sql-workbench.net/manual/license.html * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * To contact the author please send an email to: support@sql-workbench.net * */ public class Main { public static String quoteIfNeeded(String input) { if (isBlank(input)) return input; String quote = "\'"; boolean needQuote = false; if (input.indexOf('\'') > -1) { quote = "\""; needQuote = true; } if (input.indexOf(' ') > -1) { needQuote = true; } if (needQuote) { return quote + input + quote; } return input; } /** * Checks if the given parameter is "empty", * i.e: either null, length == 0 or contains only whitespace */ public static boolean isBlank(CharSequence value) { if (isEmptyString(value)) return true; return isWhitespace(value); } public static int indexOf(CharSequence value, char c) { return indexOf(value, c, 1); } public static int indexOf(CharSequence value, char c, int occurance) { if (value == null) return -1; if (occurance <= 0) occurance = 1; int numFound = 0; for (int i = 0; i < value.length(); i++) { if (value.charAt(i) == c) { numFound++; if (numFound == occurance) return i; } } return -1; } /** * Checks if the given String is null or has a zero length. * A String containing only whitespaces is not considered empty. * * @param value the String to test * @return true if the String is empty (or null) */ public static boolean isEmptyString(CharSequence value) { if (value == null) return true; if (value.length() == 0) return true; return false; } public static boolean isWhitespace(CharSequence s) { if (s == null) return false; int len = s.length(); if (len == 0) return false; int pos = 0; while (pos < len) { char c = s.charAt(pos); if (!Character.isWhitespace(c)) return false; pos++; } return true; } }