Java - Excel 셀 값을 텍스트에서 숫자로 또는 숫자에서 텍스트로 변환

10745 단어 numbertextexceljava
Excel 파일을 처리할 때 일부 셀 값이 숫자처럼 보이지만 실제로는 텍스트로 저장되는 것을 볼 수 있습니다. SUM 및 Average와 같은 Excel 함수에서 이러한 셀을 사용하는 경우 이러한 함수는 텍스트 값이 포함된 셀을 무시하기 때문에 잘못된 계산 결과를 얻게 됩니다. 이 경우 텍스트로 저장된 숫자를 다시 일반 숫자로 변환해야 합니다. 이 문서에서는 Free Spire.XLS for Java API를 사용하여 Java에서 Excel 셀 값을 텍스트에서 숫자로 또는 숫자에서 텍스트로 변환하는 방법을 설명합니다.

종속성 추가



방법 1: maven을 사용하는 경우 프로젝트의 pom.xml 파일에 다음 코드를 추가하여 Java API용 Free Spire.XLS의 JAR 파일을 애플리케이션으로 쉽게 가져올 수 있습니다.

<repositories>
    <repository>
        <id>com.e-iceblue</id>
        <name>e-iceblue</name>
        <url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
    </repository>
</repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.xls.free</artifactId>
        <version>5.1.0</version>
    </dependency>
</dependencies>


방법 2: maven을 사용하지 않는 경우 official website에서 Java용 무료 Spire.XLS를 다운로드하고 zip 파일을 추출한 다음 lib 폴더 아래의 Spire.Xls.jar 파일을 종속 항목으로 프로젝트에 가져올 수 있습니다.

Java에서 Excel 셀 값을 텍스트에서 숫자로 변환



무료 Spire.XLS for Java는 CellRange 클래스의 convertToNumber() 메서드를 제공하여 텍스트 형식의 숫자 값을 다시 숫자로 변환합니다. 이를 위한 자세한 단계는 다음과 같습니다.
  • Workbook 클래스의 인스턴스를 초기화합니다.
  • Workbook.loadFromFile() 메서드를 사용하여 Excel 파일을 로드합니다.
  • Workbook.getWorksheets().get(int) 메서드를 사용하여 원하는 워크시트를 가져옵니다.
  • Worksheet.getCellRange(int, int, int, int) 메서드를 사용하여 텍스트로 저장된 숫자가 포함된 특정 셀 범위에 액세스합니다.
  • CellRange.convertToNumber() 메서드를 호출하여 텍스트로 저장된 숫자를 다시 숫자로 변환합니다.
  • Workbook.saveToFile(String, ExcelVersion) 메서드를 사용하여 결과 파일을 저장합니다.

  • import com.spire.xls.CellRange;
    import com.spire.xls.ExcelVersion;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ConvertTextToNumber {
        public static void main(String []args){
            //Create a Workbook instance
            Workbook workbook = new Workbook();
            //Load an Excel file
            workbook.loadFromFile("Sample1.xlsx");
    
            //Get the first worksheet 
            Worksheet sheet = workbook.getWorksheets().get(0);
            //Get the specific cell range that contains numbers stored as text
            CellRange range = sheet.getCellRange(1, 1, sheet.getLastRow(), sheet.getLastColumn());
            //Convert numbers stored as text back to number
            range.convertToNumber();
    
            //Save the result file
            workbook.saveToFile("ConvertTextToNumber.xlsx", ExcelVersion.Version2016);
        }
    }
    




    Java에서 Excel 셀 값을 숫자에서 텍스트로 변환



    CellRange 클래스의 setNumberFormat() 메서드를 사용하여 Excel 셀의 숫자를 텍스트, 소수, 날짜 등으로 포맷할 수 있습니다. 다음 단계에서는 Excel 셀의 숫자를 텍스트로 서식 지정하는 방법을 보여줍니다.
  • Workbook 클래스의 인스턴스를 초기화합니다.
  • Workbook.loadFromFile() 메서드를 사용하여 Excel 파일을 로드합니다.
  • Workbook.getWorksheets().get(int) 메서드를 사용하여 원하는 워크시트를 가져옵니다.
  • Worksheet.getCellRange(int, int, int, int) 메서드를 사용하여 숫자가 포함된 특정 셀 범위에 액세스합니다.
  • CellRange.setNumberFormat(String) 메서드를 호출하여 숫자를 텍스트로 변환합니다.
  • Workbook.saveToFile() 메서드를 사용하여 결과 파일을 저장합니다.

  • import com.spire.xls.CellRange;
    import com.spire.xls.ExcelVersion;
    import com.spire.xls.Workbook;
    import com.spire.xls.Worksheet;
    
    public class ConvertNumberToText {
        public static void main(String []args){
            //Create a Workbook instance
            Workbook workbook = new Workbook();
            //Load an Excel file
            workbook.loadFromFile("Sample2.xlsx");
    
            //Get the first worksheet
            Worksheet sheet = workbook.getWorksheets().get(0);
            //Get the specific cell range that contains numbers
            CellRange range = sheet.getCellRange(1, 1, sheet.getLastRow(), sheet.getLastColumn());
            //Convert numbers to text
            range.setNumberFormat("@");
    
            //Save the result file
            workbook.saveToFile("ConvertNumberToText.xlsx", ExcelVersion.Version2016);
        }
    }
    


    좋은 웹페이지 즐겨찾기