{"id":20287331,"url":"https://github.com/nelsonbittencourt/csvazedit","last_synced_at":"2025-06-11T05:04:56.575Z","repository":{"id":196663987,"uuid":"372353031","full_name":"NelsonBittencourt/csVazEdit","owner":"NelsonBittencourt","description":"O csVazEdit é um aplicativo para converter arquivos binários de vazões, postos e MLTs em formato texto e vice-versa. Além de reproduzir as funções do aplicativo original 'VazEdit' do ONS, o csVazEdit também poderá estendê-las.","archived":false,"fork":false,"pushed_at":"2021-06-14T22:46:20.000Z","size":8854,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-04T04:14:51.897Z","etag":null,"topics":["ccee","cshap","decomp","dessem","gevazp","inflow","modelos","newave","ons","previvaz","vazao","vazoes"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NelsonBittencourt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2021-05-31T01:41:56.000Z","updated_at":"2024-02-02T17:30:45.000Z","dependencies_parsed_at":"2023-09-26T21:14:51.471Z","dependency_job_id":null,"html_url":"https://github.com/NelsonBittencourt/csVazEdit","commit_stats":null,"previous_names":["nelsonbittencourt/csvazedit"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NelsonBittencourt%2FcsVazEdit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NelsonBittencourt%2FcsVazEdit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NelsonBittencourt%2FcsVazEdit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NelsonBittencourt%2FcsVazEdit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NelsonBittencourt","download_url":"https://codeload.github.com/NelsonBittencourt/csVazEdit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NelsonBittencourt%2FcsVazEdit/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259204801,"owners_count":22821159,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ccee","cshap","decomp","dessem","gevazp","inflow","modelos","newave","ons","previvaz","vazao","vazoes"],"created_at":"2024-11-14T14:39:26.282Z","updated_at":"2025-06-11T05:04:56.547Z","avatar_url":"https://github.com/NelsonBittencourt.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# csVazEdit versão 0.003\r\n\r\nO csVazEdit é um aplicativo para converter arquivos binários de vazões, postos e MLTs em formato texto e vice-versa. Além de reproduzir as funções do aplicativo original 'VazEdit' do ONS, o csVazEdit também poderá estendê-las.\r\n\r\nOs arquivos de vazões, MLTs e postos são utilizados pelo ONS e CCEE nos modelos Newave, Decomp, Gevazp e Dessem.\r\n\r\n\r\n\u003cimg src=\"pictures/csVazEdit_ScreenShot.png\" width=\"700\"\u003e\r\n\r\n\u003cimg src=\"pictures/csVazEdit_WinConsole.png\" width=\"700\"\u003e \r\n\r\n\u003cimg src=\"pictures/csVazEdit_txt.png\" width=\"700\"\u003e \r\n\r\nModelo de arquivo Excel que o pyVazEdit lê para atualizar um arquivo de vazões binários:\r\n\r\n\u003cimg src=\"pictures/csVazEdit_Exemplo_Excel.png\" width=\"700\"\u003e \r\n\r\n\r\n## Utilização:\r\n\r\nPara utilizar o csVazEdit, existem duas formas básicas:\r\n\r\n### A) Alterando o código-fonte e utlizando as funções básicas:\r\n\r\n#### A.1) Importando os dados de vazão de um arquivo binário:\r\n```C#\r\n\r\nvar meuHistorico = fileOps.loadBinVazoes(\u003ccaminho completo do arquivo binário\u003e, [anoInicial],[numPostos]); \r\n\r\n```\r\n\r\n#### A.2) Importando os dados de vazão de um arquivo texto (formato VazEdit):\r\n```C#\r\n\r\nvar meuHistorico = fileOps.loadTxtVazoes(\u003ccaminho completo do arquivo texto\u003e);\r\n\r\n```\r\n\r\n#### A.3) Alterando ou incluindo valores em um histórico de vazões lido:\r\n```C#\r\n\r\nmudaVazao(meuHistorico,1,2,1931,999);\r\n\r\n```\r\n\r\n#### A.4) Salvando um histórico de vazões lidos em um formato específico:\r\n```C#\r\n\r\n fileOps.saveVazoes(meuHistorico, \u003ccaminho do arquivo de saída\u003e, \"binario\");     // formato binário\r\n fileOps.saveVazoes(meuHistorico, \u003ccaminho do arquivo de saída\u003e, \"csv\");         // formato texto csv\r\n fileOps.saveVazoes(meuHistorico, \u003ccaminho do arquivo de saída\u003e, \"vazEdit\");     // formato texto VazEdit     \r\n\r\n```\r\n### A.5) Importanto dados de um arquivo binário de MLTs:\r\n```C#\r\n\r\nvar minhasMLTs = fileOps.loadBinMLTs(\u003ccaminho do arquivo de entrada\u003e , [numPostos]);\r\n\r\n```\r\n### A.6) Importanto dados de um arquivo texto de MLTs:\r\n```C#\r\n\r\nvar minhasMLTs = fileOps.loadTxtMLTs(\u003ccaminho do arquivo de entrada\u003e);\r\n\r\n```\r\n\r\n### A.7) Salvando dados de MLTs para os formatos binário e/ou 'VazEdit':\r\n```C#\r\n\r\nfileOps.saveMLTs(\u003ccaminho do arquivo de saída\u003e, minhasMLTs, \"binario\");  // formato binário\r\nfileOps.saveMLTs(\u003ccaminho do arquivo de saída\u003e, minhasMLTs, \"vazEdit\");  // formato texto 'VazEdit'\r\n\r\n```\r\n\r\n### A.7) Importanto dados de um arquivo binário de postos:\r\n```C#\r\n\r\nvar meusPostos = fileOps.loadBinPostos(\u003ccaminho do arquivo de entrada\u003e,[numPostos]);\r\n\r\n```\r\n\r\n### A.8) Importanto dados de um arquivo texto de postos:\r\n```C#\r\n\r\nvar meusPostos = fileOps.loadTxtPostos(\u003ccaminho do arquivo de entrada\u003e,[numPostos]);\r\n\r\n```\r\n\r\n\r\n### A.8) Salvando dados de postos para os formatos binário e/ou 'VazEdit':\r\n```C#\r\n\r\nfileOps.savePostos(\u003ccaminho do arquivo de saída\u003e, meusPostos, \"binario\");  // formato binário\r\nfileOps.savePostos(\u003ccaminho do arquivo de saída\u003e, meusPostos, \"vazEdit\");  // formato texto 'VazEdit'            \r\n\r\n```\r\n\r\n### B) Utilizando a linha de comando para invocar uma das funções já criadas:\r\n\r\n### B.1) Dados de vazões:\r\n\r\n##### B.1.1) Convertendo um arquivo binário de vazões para texto:\r\n```C#\r\n\r\ncsVazEdit vazoes -paraTexto \u003ccaminho do arquivo binário de entrada\u003e \u003ccaminho do arquivo texto de saída\u003e [-ai \u003cano inicial\u003e] [-np \u003cnúmero de postos\u003e] \r\n\r\n```\r\n-ai \u003cano inicial\u003e - argumento opcional para especificar o primeiro ano do histórico do arquivo binário. Utilize este parâmetro caso o arquivo binário tenha um ano inicial diferente de 1931;\r\n\r\n-np \u003cnúmero de postos\u003e - argumento opcional para especificar o número de postos do arquivo binário a ser convertido. O ONS utiliza 320 postos para o modo \"operação\" do sistema e 600 postos para o modo \"planejamento\".\r\n \r\n##### B.1.2) Convertendo um arquivo binário de vazões para csv:\r\n```C#\r\n\r\ncsVazEdit vazoes -paraCSV \u003ccaminho do arquivo binário de entrada\u003e \u003ccaminho do arquivo texto de saída\u003e [-ai \u003cano inicial\u003e] [-np \u003cnúmero de postos\u003e] \r\n\r\n```\r\n-ai \u003cano incial\u003e - argumento opcional para especificar o primeiro ano do histórico do arquivo binário. Utilize este parâmetro caso o arquivo binário tenha um ano inicial diferente de 1931;\r\n\r\n-np \u003cnúmero de postos\u003e - argumento opcional para especificar o número de postos do arquivo binário a ser convertido. O ONS utiliza 320 postos para o modo \"operação\" do sistema e 600 postos para o modo \"planejamento\".\r\n \r\n##### B.1.3) Convertendo um arquivo texto de vazões para binario:\r\n```C#\r\n\r\ncsVazEdit vazoes -paraBinario \u003ccaminho do arquivo texto de entrada\u003e \u003ccaminho do arquivo binário de saída\u003e [-ai \u003cano inicial\u003e] [-np \u003cnúmero de postos\u003e]\r\n\r\n```\r\n\r\n##### B.1.4) Atualizando um arquivo binário de vazões com dados lidos de um arquivo Excel (requer o pacote EEPlus):\r\n```C#\r\n\r\ncsVazEdit vazoes -atualizaBinario \u003ccaminho do arquivo binário de entrada\u003e \u003ccaminhgo do arquivo binário de saída\u003e \u003carquivo Excel padrão\u003e -ex \u003cintervalo Excel\u003e\r\n\r\n```\r\n-ex \u003cintervalo Excel\u003e deve ser uma string com quatro valores separados por vírgulos. São eles devem ter o seguinte formato: \"linIni, colIni, linFim e colFim\" . Onde:\r\n  linIni, colIni  - linha e coluna da primeira célula (canto superior esquerdo) da tabela de dados a serem lidos;\r\n  linFim, colFim  - linha e coluna da última célula (canto inferior direito) da tabela de dados a serem lidos.\r\n \r\nExemplo:\r\n```C#\r\n\r\ncsVazEdit vazoes -atualizaBinario tests/vazoes.dat tests/vazoes_atualizadas.dat tests/csVazEdit_Excel.xlsx vazoes.bin 3,2,13,14\r\n\r\n```\r\n\r\n### B.2) Dados de MLTs:\r\n\r\n##### B.2.1) Convertendo um arquivo binário de MLTs para arquivo texto:\r\n```C#\r\n\r\ncsVazEdit mlts -paraTexto \u003carquivo binário de MLTs de entrada\u003e \u003carquivo texto de MLTS de saída\u003e -np \u003cnúmero de postos\u003e\r\n\r\n```\r\n \r\n##### B.2.2) Convertendo um arquivo texto de MLTs para arquivo binário:\r\n```C#\r\n\r\ncsVazEdit mlts -paraBinario \u003carquivo texto de MLTs de entrada\u003e \u003carquivo binário de MLTS de saída\u003e -np \u003cnúmero de postos\u003e\r\n\r\n```\r\n\r\n### B.3) Dados de postos:\r\n\r\n##### B.3.1) Convertendo um arquivo binário de postos para arquivo texto:\r\n```C#\r\n\r\ncsVazEdit postos -paraTexto \u003carquivo binário de postos de entrada\u003e \u003carquivo texto de postos de saída\u003e -np \u003cnúmero de postos\u003e\r\n\r\n```\r\n \r\n##### B.3.2) Convertendo um arquivo texto de postos para arquivo binário:\r\n```C#\r\n\r\ncsVazEdit postos -paraBinario \u003carquivo texto de postos de entrada\u003e \u003carquivo binário de postos de saída\u003e -np \u003cnúmero de postos\u003e\r\n\r\n```\r\n \r\n\r\n## Dependências:\r\n\r\n[EEPlus](https://www.nuget.org/packages/EPPlus)\r\n\r\n## Licença:\r\n\r\n[Ver licença](LICENSE)\r\n\r\n## Projeto relacionado:\r\n\r\n[NVazEdit C#](http://nrbenergia.somee.com/SoftDev/NVazEdit/NVazEdit)\r\n\r\n## Sobre o autor:\r\n\r\n[Meu LinkedIn](http://www.linkedin.com/in/nelsonrossibittencourt)\r\n\r\n[Minha página de projetos](http://www.nrbenergia.somee.com)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnelsonbittencourt%2Fcsvazedit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnelsonbittencourt%2Fcsvazedit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnelsonbittencourt%2Fcsvazedit/lists"}