Unity 에서 ini 프로필 분석 --- - INiParser
5338 단어 unity3d에디터 개인 맞 춤 형
안녕하세요, 저 는 손 광 둥 입 니 다. 전재 출처 를 밝 혀 주 십시오:http://blog.csdn.net/u010019717
더 자세 한 내용 은 제 게임 만 우 주 소 를 보 세 요.http://www.unitymanual.com/space-uid-18602.html
Ini files
이 라 이브 러 리 는 ini 파일 을 처리 할 수 있 습 니 다.이 파일 은 파일 내용 이 정확 한 형식 이 라면 모든 확장자 (예: txt) 일 수 있 습 니 다.
[Player]
name=Arnold
avatar=2
; This section stored hi-scores
[Hi-score]
Top1=32900
Top2=12000
Top3=4700
그럼 이 라 이브 러 리 는 어떻게 사용 하나 요?
1. "INIParser. cs" 를 Unity. 2 에 추가 합 니 다. INIParser 대상 을 설명 하고 사용 합 니 다.
여러 개의 Ini 파일
모든 INIParser 인 스 턴 스 에 대해 서 는 오픈 된 ini 파일 만 있 을 수 있 습 니 다. 다음 ini 파일 을 열 수 있 지만 그 전에 Close () 를 사용 해 야 합 니 다.
INIParser ini = new INIParser();
ini.Open(“C:/Test.ini”);
ini.WriteValue(“Player”,“Name”,“Arnold”);
ini.Close();
방법
Open(string path)
Open ini_file reading 과 writing. 이 파일 이 존재 하지 않 으 면 생 성 됩 니 다.reading / writing 이 완료 되면 함수 Close () 를 호출 하 십시오.이 ini 파일 의 모든 변 화 를 저장 합 니 다.
Open(TextAsset asset)
Open 하나의 TextAsset 를 ini 로파일. 변경 사항 이 있 으 면 복사 본 은 Persistent Data Path 의 영구적 인 데이터 경로 에 저 장 됩 니 다.이 함 수 는 Persistent Data Path 의 지속 적 인 데이터 경 로 를 계속 보고 있 습 니 다. 수 정 된 TextAsset 사본 이 있 으 면 실제 게임 의 텍스트 자원 팩 을 보기 전에 Persistent Data Path 의 지속 적 인 데이터 경로 변 화 를 먼저 볼 수 있 습 니 다.
OpenFromString(string str)
문자열 에서 ini 파일 을 만 들 고 읽 기 / 쓰기 에 사용 합 니 다.올 바른 포맷 문자열 을 ini 파일 (즉, sections 부분, keys 키 와 values 값) 로 사용 하지 않 으 면 ini 파일 을 올 바 르 게 만 들 수 없습니다.이 ini 파일 은 잠시 메모리 에 만 존재 합 니 다.하지만 ToString () 이 되 돌려 주 는 문자열 을 사용 하면 서버 나 디스크 의 완전한 ini 파일 에 저장 할 수 있 습 니 다.
string ToString(string str)
온전한 것 으로 되돌아가다 ini file 문자열.
Close()
열 린 ini 파일 을 읽 거나 쓰 려 면 이 방법 을 사용 해 야 합 니 다.이 방법 을 사용 할 때 까지 ini 파일 데 이 터 를 메모리 에 저장 합 니 다. 이 데 이 터 는 디스크 에 기 록 됩 니 다.
string ReadValue(string section, string key, string default)
(과부하: bool, int, long, double, byte [], DateTime)
종 inifile 에서 값 을 읽 습 니 다.값 이 존재 하지 않 으 면 (기본 값) 되 돌아 갑 니 다.
WriteValue (string section, string key, string value) (overload: bool, int, long, double, byte [], DateTime) 에 값 을 기록 합 니 다. ini_file
SectionDelete(string section)
전체 ini 파일 의 section 부분 을 삭제 합 니 다. 이것 도 연 결 된 모든 키 / 값 쌍 을 삭제 합 니 다.
bool IsSectionExists(string section)
ini 파일 의 section 절 이 존재 하 는 지 확인 합 니 다.오 류 를 방지 하기 위해 검사 할 필요 가 없습니다. ReadValue 가 존재 하지 않 는 section 절 에서 ReadValue 는 기본 값 만 되 돌려 주기 때 문 입 니 다.그러나 ini 파일 이 저 장 된 구체 적 인 데 이 터 를 유용 하 게 사용 할 수 있 습 니 다.
KeyDelete(string section, string key)
선 택 된 것 삭제 key (그리고 그것 과 관련 된 value) ini 파일 에서
bool IsKeyExists(string section, string key)
ini 파일 에 지정 한 키 가 있 는 지 확인 합 니 다.오 류 를 방지 하기 위해 검사 할 필요 가 없습니다. ReadValue 가 존재 하지 않 는 절 이 라면 ReadValue 는 기본 값 만 되 돌려 줍 니 다.그러나 ini 파일 이 저 장 된 구체 적 인 데 이 터 를 유용 하 게 사용 할 수 있 습 니 다.
Open(TextAsset asset)
TextAsset 는 read - only 이기 때문에 모든 변경 사항 은 Sandbox area 샌 드 박스 영역 (persistentDataPath) 에 두 는 것 입 니 다.
Example code:
INIParser ini = new INIParser();
ini.Open(“C:/Test.ini”);
ini.WriteValue(“Player”,“Name”,“Arnold”);
ini.WriteValue(“Hi-score”,“Top3”,1000);
ini.Close();
ini.Open(“C:/Test2.ini”);
ini.WriteValue(“Position”,“x”,2);
ini.WriteValue(“Position”,“y”,3);
ini.Close();
가끔 은 TextAsset 텍스트 자원 을 ini 파일 로 사용 하고 싶 을 때 가 있 습 니 다.게임 패키지 에는 TextAsset 텍스트 자원 이 포함 되 어 있 기 때문에 모든 플랫폼 에서 읽 기 / 쓰기 작업 이 믿 을 수 있 습 니 다.streaming assets 흐름 의 자산 을 ini 파일 로 사용 하면 읽 기 / 쓰기 권한 으로 잘못된 모 바 일 플랫폼 에 도달 할 수 있 습 니 다.
이 TextAsset 텍스트 자원 이 존재 하 는 지 확인 해 야 합 니 다. 그렇지 않 으 면 읽 기 / 쓰기 작업 이 제대로 작 동 하지 않 을 것 입 니 다.
Credits
library 는 게임 제작 실 INI 파일 시스템 을 본 떠 서 STA INFile 로 개 편 된 것 입 니 다.
Example code:
Save 와 load game data
INIParser ini = new INIParser();
TextAsset asset = Resource.Load("TextAssetExample") as TextAsset;
ini.Open(asset);
ini.WriteValue("Player","Name","Arnold");
ini.Close();
이 경기 가 처음 실 행 될 때 무슨 일이 일어 날 까요?
이 코드 는 저장 파일 에서 점 수 를 읽 고 100 을 늘 리 며 새로운 점 수 를 저장 합 니 다.
Open () 은 "save. txt" 가 존재 하지 않 기 때문에 공백 "save. txt" 가 생 성 됩 니 다.그리고 점 수 는 읽 힌 다."save. txt" 가 비어 있 기 때문에 점 수 는 ini 파일 에서 찾 을 수 없 기 때문에 기본 값 은 10 입 니 다.그리고 새로운 점수 값 은 ini 파일 에 기록 합 니 다.
Save 와 load game data TextAsset 파일 에서
INIParser ini = new INIParser();
// Open the save file. If the save file does not exist, INIParser automatically create
// one
ini.Open(Application.persistentDataPath + "save.txt");
// Read the score. If the section/key does not exist, default score to 10
int score = ini.ReadValue("Player","Score",10);
score += 100;
ini.WriteValue("Player","Score",score);
ini.Close();
가끔 은 TextAsset 텍스트 자원 을 ini 파일 로 사용 하고 싶 을 때 가 있 습 니 다.게임 패키지 에는 TextAsset 텍스트 자원 이 포함 되 어 있 기 때문에 모든 플랫폼 에서 읽 기 / 쓰기 작업 이 믿 을 수 있 습 니 다.streaming assets 흐름 의 자산 을 ini 파일 로 사용 하면 읽 기 / 쓰기 권한 으로 잘못된 모 바 일 플랫폼 에 도달 할 수 있 습 니 다.
이 TextAsset 텍스트 자원 이 존재 하 는 지 확인 해 야 합 니 다. 그렇지 않 으 면 읽 기 / 쓰기 작업 이 제대로 작 동 하지 않 을 것 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Unity용 VLC 소개 - Android 에디션숙련된 Unity 개발자는 유명한 Big Buck Bunny 비디오를 재생하는 VLC 플러그인을 보여주기 위해 편집된 유명한 Unity 장면 을 인식할 것입니다. 이 Unity 플러그인을 사용하면 Unity 기반 A...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.