scala文件讀取報錯“java.nio.charset.MalformedInputException: Input length = 1”
今天寫spark程序的時候遇到了一個問題就是,讀取文件的時候報了一個錯:“Exception in thread "main" java.nio.charset.MalformedInputException: Input length = 1”
讀取文件的代碼如下:
一看這個這個錯“nio”錯誤,第一感覺就是讀文件方法這裏出了問題,於是點擊去看了一下Source.fromFile這個方法的源碼:
果然,這個方法的重載有好幾個,但是每一都直接或間接的需要指定讀取文件的編碼,就是說你需要以什麽編碼去讀取你需要讀取的文件,因為我的IDEA設置的編碼時UTF-8
所以如果使用UTF-8讀取GBK文件會出現問題,需要指定讀取編碼為GBK
或者
這兩中方式都可以,都是從源碼中得來的。
設置完成之後,重新運行程序,報錯消失
scala文件讀取報錯“java.nio.charset.MalformedInputException: Input length = 1”
相關推薦
scala文件讀取報錯“java.nio.charset.MalformedInputException: Input length = 1”
info 設置 ava put 編碼 今天 讀取 tex 源碼 今天寫spark程序的時候遇到了一個問題就是,讀取文件的時候報了一個錯:“Exception in thread "main" java.nio.charset.MalformedInputException:
org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
專案啟動報錯2018-12-21 14:06:24.917 INFO 23472 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.spring[email protected]561868a0: startu
yml java.nio.charset.MalformedInputException: Input length = 1異常
java.nio.charset.MalformedInputException: Input length = 1異常 java.nio.charset.MalformedInputException: Input length = 1 錯誤 1.其中一個最
NIO初學,以及java.nio.charset.MalformedInputException: Input length = 1
import java.io.*; import java.nio.CharBuffer; import java.nio.MappedByteBuffer; import java.nio.channels.FileChannel; import java.nio.charset.Cha
Python文件讀取報錯 UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 9: illegal multibyte sequence
http style png can odi utf posit python dede 源代碼: fo = open("***.csv","r") 報錯: 解決方案: fo = open("***.csv","r",encoding=‘UTF-8‘) Pyth
【JavaNIO的深入研究4】內存映射文件I/O,大文件讀寫操作,Java nio之MappedByteBuffer,高效文件/內存映射
int start lib 交換文件 bsp 沒有 res collected str time 內存映射文件能讓你創建和修改那些因為太大而無法放入內存的文件。有了內存映射文件,你就可以認為文件已經全部讀進了內存,然後把它當成一個非常大的數組來訪問。這種解決辦法能大大簡化修
【java 文件讀寫操作】 生成隨機數,寫入txt,然後從txt中讀出
進行 rac 直接 生成隨機數 catch trace buffered 代碼 tac 1.把生成的隨機數寫入到文件中 1 public static void WriterFun(){ 2 //獲得路徑 3 String filep
java 文件讀寫
字節流 就會 brush not line 程序 sdf highlight write import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.DataInputStrea
Java 文件讀寫操作
顯示行號 splay pri images amp index 文件內容 ges 顯示 1【1】按字節讀寫,一次只讀取一個字節,效率比較低 1 package bk1; 2 3 import java.io.File; 4 import java.io.File
properties文件讀寫工具類PropertiesUtil.java
prop ace sys pan str pri finally res println import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException
java文件讀寫
length 字符流 try nbsp pan rgs output 傳輸 str IO流簡單來說就是輸入流和輸出流主要是用來處理設備之間的數據傳輸 案例1采用的是字節流方式,案例2采用字符流方式;字節流和字符流之間差異很大,讀者需根據自己的場景使用 案例1: 采用
Linux下Java運行.class文件,報錯找不到或無法加載主類
code 運行 pro jar 更改 class ssp linux lib classpath配置的錯誤,所以找不到.class文件。 原先的etc/profile中的classpath配置 export CLASSPATH=$JAVA_HOME/lib/tools.j
springcloud采坑--Zuul上傳文件報java.nio.charset.IllegalCharsetNameException: UTF-8;boundary=sqgzzmMxl1UPdIp0IAYnQgUIAr9yNewVAzKIX
servlet ctu ets ica efault mmx default session pat 報錯日誌: 2018-12-17 10:01:19,688 ERROR [io.undertow.request] (default task-3) UT005023: E
Java 遍歷文件夾,文件讀寫
i++ clas 所有 輸出 stack not director null rgs 遍歷文件夾,輸出文件夾下的所有文件和文件名: import java.io.File; public class Scaner { public static void
Java中超大文件讀寫
inpu ++ nes code 文件 pat file類 edr 文本文 如果文件過大不能一次加載,就可以利用緩沖區: File file = new File(filepath); BufferedInputStream fis = new Buffere
Linux C,文件讀寫函數
err urn view stdlib.h ungetc put stream end linu C標準庫提供的用於讀寫文件的函數非常多,大多數函數都在stdio.h中聲明. fread/fwrite,fgets/fputs,fgetchar/fputchar,fprint
大文件拆分問題的java實踐(附源碼)
解決方案 初始化 問題 申請 border output 思想 行數據 時延 引子 大文件拆分問題涉及到io處理、並發編程、生產者/消費者模式的理解,是一個很好的綜合應用場景,為此,花點時間做一些實踐,對相關的知識做一次梳理和集成,總結一些共性的處理方案和思路,以供後續工
Python常用的文件讀寫操作和字符串操作
dir info load char 編碼 lines resolve values ror 文件讀寫操作 fileUtils.py # -*- coding: utf-8 -*- import os def getFileList(dir, fileList=[]):
第13章第2講文件讀寫操作
pla margin nbsp tchar img http blog fputs fop #include"stdio.h" main() { FILE *fp; if((fp=fopen("c1.txt","rt"))==NULL) {
C++文件讀寫操作
run -- 模式 ocr bin 第一個 輸出數據 con char 1、文件寫入 ofstream類: ofstream( const char* szName, int nMode = ios::out, int nProt = filebuf::openpr